Messages in this thread | | | Subject | [PATCH 0/4] VFS fileop cleanups by collapsing AIO and vector IO | From | Badari Pulavarty <> | Date | Mon, 15 May 2006 14:19:05 -0700 |
| |
Hi Andrew,
These series of patches clean up and streamlines generic_file_* interfaces in filemap.c. This time, to avoid public humiliation, I compiled (allmodconfig) the patchset on 3 different architectures (i386, x86_64, ppc64) and 4 different compilers versions and made sure this patchset didn't introduce any new error & warnings :)
This is a patchset against 2.6.17-rc4, so won't apply cleanly on -mm (few minor fixes in ocfs2, nfs & jffs2 needed). If you want me to send patchset against 2.6.17-rc4-mm1, please let me know.
Note:
1. I couldn't reproduce the compiler warning you got:
fs/aio.c: In function `aio_advance_iovec': fs/aio.c:1314: warning: comparison of distinct pointer types lacks a cast
So, I didn't fix this.
=====
First (3) patches collapses all the vectored IO support into single set of file-operation method using aio_read/aio_write. This work was originally suggested & started by Christoph Hellwig, when Zach Brown tried to add vectored support for AIO.
Patch 4, sets all the filesystems .read/.write/.aio_read/.aio_write methods correctly to allow us to cleanup most generic_file_*_read/write interfaces in filemap.c
After this patch set, we should end up with ONLY following read/write (exported) interfaces in filemap.c:
generic_file_aio_read() - read handler generic_file_aio_write() - write handler generic_file_aio_write_nolock() - no lock write handler
Here is the summary:
[PATCH 1/4] Vectorize aio_read/aio_write methods
[PATCH 2/4] Remove readv/writev methods and use aio_read/aio_write instead.
[PATCH 3/4] Core aio changes to support vectored AIO.
[PATCH 4/4] Streamline generic_file_* interfaces and filemap cleanups
BTW, Chuck Lever is actually re-arranging NFS DIO, AIO code to fit into this model.
Thanks to Chuck Lever, Shaggy, Christoph, Zach Brown, Ben LaHaise for helping out.
Thanks, Badari
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |