Revision 3e2796a90cf349527e50b3bc4d0b2f4019b1ce7a authored by Eric Van Hensbergen on 02 November 2009, 14:39:28 UTC, committed by Eric Van Hensbergen on 02 November 2009, 14:43:45 UTC
The patch below also addresses a couple of other corner cases in readdir
seen with a large (e.g. 64k) msize.  I'm not sure what people think of
my co-opting of fid->aux here.  I'd be happy to rework if there's a better
way.

When the size of the user supplied buffer passed to readdir is smaller
than the data returned in one go by the 9P read request, v9fs_dir_readdir()
currently discards extra data so that, on the next call, a 9P read
request will be issued with offset < previous offset + bytes returned,
which voilates the constraint described in paragraph 3 of read(5) description.
This patch preseves the leftover data in fid->aux for use in the next call.

Signed-off-by: Jim Garlick <garlick@llnl.gov>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>

1 parent 2511cd0
History
File Mode Size
.gitignore -rw-r--r-- 151 bytes
Kconfig -rw-r--r-- 4.4 KB
Makefile -rw-r--r-- 2.1 KB
gen_init_cpio.c -rw-r--r-- 12.2 KB
initramfs_data.S -rw-r--r-- 1021 bytes
initramfs_data.bz2.S -rw-r--r-- 1.0 KB
initramfs_data.gz.S -rw-r--r-- 1023 bytes
initramfs_data.lzma.S -rw-r--r-- 1.0 KB

back to top