ocfs2: teach ocfs2_file_aio_write() about sparse files
authorMark Fasheh <mark.fasheh@oracle.com>
Sat, 10 Feb 2007 04:24:12 +0000 (20:24 -0800)
committerMark Fasheh <mark.fasheh@oracle.com>
Thu, 26 Apr 2007 22:02:08 +0000 (15:02 -0700)
commit9517bac6cc7a7aa4fee63cb38a32cb6014e264c7
tree3cac0c18d0cacc316e0e8a60f483282d6f991779
parent89488984ac23b0580f959b9ee549f2fcb1c2f194
ocfs2: teach ocfs2_file_aio_write() about sparse files

Unfortunately, ocfs2 can no longer make use of generic_file_aio_write_nlock()
because allocating writes will require zeroing of pages adjacent to the I/O
for cluster sizes greater than page size.

Implement a custom file write here, which can order page locks for zeroing.
This also has the advantage that cluster locks can easily be ordered outside
of the page locks.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
fs/ocfs2/aops.c
fs/ocfs2/aops.h
fs/ocfs2/extent_map.c
fs/ocfs2/extent_map.h
fs/ocfs2/file.c
fs/ocfs2/file.h
fs/ocfs2/ocfs2.h