diff options
author | Murphy Zhou <jencce.kernel@gmail.com> | 2019-04-04 14:57:11 +0800 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2019-04-05 19:57:24 -0400 |
commit | 3c86794ac0e6582eea7733619d58ea150198502f (patch) | |
tree | 097ea6e5d63a6fc920c1c0b30f7de874f148b4cf /fs/cifs | |
parent | d58431eacb226222430940134d97bfd72f292fcd (diff) | |
download | linux-3c86794ac0e6582eea7733619d58ea150198502f.tar.bz2 |
nfsd/nfsd3_proc_readdir: fix buffer count and page pointers
After this commit
f875a79 nfsd: allow nfsv3 readdir request to be larger.
nfsv3 readdir request size can be larger than PAGE_SIZE. So if the
directory been read is large enough, we can use multiple pages
in rq_respages. Update buffer count and page pointers like we do
in readdirplus to make this happen.
Now listing a directory within 3000 files will panic because we
are counting in a wrong way and would write on random page.
Fixes: f875a79 "nfsd: allow nfsv3 readdir request to be larger"
Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/cifs')
0 files changed, 0 insertions, 0 deletions