• Daniel Vetter's avatar
    sysfs: Support zapping of binary attr mmaps · 74b30195
    Daniel Vetter authored
    We want to be able to revoke pci mmaps so that the same access rules
    applies as for /dev/kmem. Revoke support for devmem was added in
    3234ac66 ("/dev/mem: Revoke mappings when a driver claims the
    region").
    
    The simplest way to achieve this is by having the same filp->f_mapping
    for all mappings, so that unmap_mapping_range can find them all, no
    matter through which file they've been created. Since this must be set
    at open time we need sysfs support for this.
    
    Add an optional mapping parameter bin_attr, which is only consulted
    when there's also an mmap callback, since without mmap support
    allowing to adjust the ->f_mapping makes no sense.
    Reviewed-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
    Cc: Jason Gunthorpe <jgg@ziepe.ca>
    Cc: Kees Cook <keescook@chromium.org>
    Cc: Dan Williams <dan.j.williams@intel.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: John Hubbard <jhubbard@nvidia.com>
    Cc: Jérôme Glisse <jglisse@redhat.com>
    Cc: Jan Kara <jack@suse.cz>
    Cc: Dan Williams <dan.j.williams@intel.com>
    Cc: linux-mm@kvack.org
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-samsung-soc@vger.kernel.org
    Cc: linux-media@vger.kernel.org
    Cc: Bjorn Helgaas <bhelgaas@google.com>
    Cc: linux-pci@vger.kernel.org
    Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Cc: "Rafael J. Wysocki" <rafael@kernel.org>
    Cc: Christian Brauner <christian.brauner@ubuntu.com>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Sourabh Jain <sourabhjain@linux.ibm.com>
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Cc: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Cc: Nayna Jain <nayna@linux.ibm.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    Link: https://patchwork.freedesktop.org/patch/msgid/20201127164131.2244124-12-daniel.vetter@ffwll.ch
    74b30195
file.c 18.7 KB