fs: introduce f_op->mmap_capabilities for nommu mmap support
authorChristoph Hellwig <hch@lst.de>
Wed, 14 Jan 2015 09:42:32 +0000 (10:42 +0100)
committerJens Axboe <axboe@fb.com>
Tue, 20 Jan 2015 21:02:58 +0000 (14:02 -0700)
commitb4caecd48005fbed3949dde6c1cb233142fd69e9
tree1fdd9b7c15568c79eb3c1ed84a39858ddbcbc88b
parent97b713ba3ebaa6c8d84c2c720f5468a7c6a6eb4e
fs: introduce f_op->mmap_capabilities for nommu mmap support

Since "BDI: Provide backing device capability information [try #3]" the
backing_dev_info structure also provides flags for the kind of mmap
operation available in a nommu environment, which is entirely unrelated
to it's original purpose.

Introduce a new nommu-only file operation to provide this information to
the nommu mmap code instead.  Splitting this from the backing_dev_info
structure allows to remove lots of backing_dev_info instance that aren't
otherwise needed, and entirely gets rid of the concept of providing a
backing_dev_info for a character device.  It also removes the need for
the mtd_inodefs filesystem.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Tejun Heo <tj@kernel.org>
Acked-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
32 files changed:
Documentation/nommu-mmap.txt
block/blk-core.c
drivers/char/mem.c
drivers/mtd/mtdchar.c
drivers/mtd/mtdconcat.c
drivers/mtd/mtdcore.c
drivers/mtd/mtdpart.c
drivers/staging/lustre/lustre/llite/llite_lib.c
fs/9p/v9fs.c
fs/afs/volume.c
fs/aio.c
fs/btrfs/disk-io.c
fs/char_dev.c
fs/cifs/connect.c
fs/coda/inode.c
fs/configfs/configfs_internal.h
fs/configfs/inode.c
fs/configfs/mount.c
fs/ecryptfs/main.c
fs/exofs/super.c
fs/ncpfs/inode.c
fs/ramfs/file-nommu.c
fs/ramfs/inode.c
fs/romfs/mmap-nommu.c
fs/ubifs/super.c
include/linux/backing-dev.h
include/linux/cdev.h
include/linux/fs.h
include/linux/mtd/mtd.h
mm/backing-dev.c
mm/nommu.c
security/security.c