diff options
author | Christoph Hellwig <hch@lst.de> | 2016-06-21 09:23:11 +1000 |
---|---|---|
committer | Dave Chinner <david@fromorbit.com> | 2016-06-21 09:23:11 +1000 |
commit | ae259a9c8593f98aa60d045df978a5482a67c53f (patch) | |
tree | a3c07fa9fb8c61475ff85f4d8812d83c287258ff /fs/Makefile | |
parent | 199a31c6d93ba9dc6f831fa1e77d9926f34f4e8a (diff) | |
download | op-kernel-dev-ae259a9c8593f98aa60d045df978a5482a67c53f.zip op-kernel-dev-ae259a9c8593f98aa60d045df978a5482a67c53f.tar.gz |
fs: introduce iomap infrastructure
Add infrastructure for multipage buffered writes. This is implemented
using an main iterator that applies an actor function to a range that
can be written.
This infrastucture is used to implement a buffered write helper, one
to zero file ranges and one to implement the ->page_mkwrite VM
operations. All of them borrow a fair amount of code from fs/buffers.
for now by using an internal version of __block_write_begin that
gets passed an iomap and builds the corresponding buffer head.
The file system is gets a set of paired ->iomap_begin and ->iomap_end
calls which allow it to map/reserve a range and get a notification
once the write code is finished with it.
Based on earlier code from Dave Chinner.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs/Makefile')
-rw-r--r-- | fs/Makefile | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/Makefile b/fs/Makefile index 85b6e13..ed2b632 100644 --- a/fs/Makefile +++ b/fs/Makefile @@ -49,6 +49,7 @@ obj-$(CONFIG_COREDUMP) += coredump.o obj-$(CONFIG_SYSCTL) += drop_caches.o obj-$(CONFIG_FHANDLE) += fhandle.o +obj-$(CONFIG_FS_IOMAP) += iomap.o obj-y += quota/ |