diff options
author | Bryan Schumaker <bjschuma@netapp.com> | 2010-10-20 15:44:37 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2010-10-23 15:27:35 -0400 |
commit | 56e4ebf877b6043c289bda32a5a7385b80c17dee (patch) | |
tree | 160ae8d5b5ee3871d02a9f5283187430c9ec5ffe /fs/nfs/nfs3proc.c | |
parent | afa8ccc978c24d8ab22e3b3b8cbd1054c84c070b (diff) |
NFS: readdir with vmapped pages
We can use vmapped pages to read more information from the network at once.
This will reduce the number of calls needed to complete a readdir.
Signed-off-by: Bryan Schumaker <bjschuma@netapp.com>
[trondmy: Added #include for linux/vmalloc.h> in fs/nfs/dir.c]
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs3proc.c')
-rw-r--r-- | fs/nfs/nfs3proc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/nfs/nfs3proc.c b/fs/nfs/nfs3proc.c index f8446b38dcb4..ce939c062a52 100644 --- a/fs/nfs/nfs3proc.c +++ b/fs/nfs/nfs3proc.c | |||
@@ -630,7 +630,7 @@ out: | |||
630 | */ | 630 | */ |
631 | static int | 631 | static int |
632 | nfs3_proc_readdir(struct dentry *dentry, struct rpc_cred *cred, | 632 | nfs3_proc_readdir(struct dentry *dentry, struct rpc_cred *cred, |
633 | u64 cookie, struct page *page, unsigned int count, int plus) | 633 | u64 cookie, struct page **pages, unsigned int count, int plus) |
634 | { | 634 | { |
635 | struct inode *dir = dentry->d_inode; | 635 | struct inode *dir = dentry->d_inode; |
636 | __be32 *verf = NFS_COOKIEVERF(dir); | 636 | __be32 *verf = NFS_COOKIEVERF(dir); |
@@ -640,7 +640,7 @@ nfs3_proc_readdir(struct dentry *dentry, struct rpc_cred *cred, | |||
640 | .verf = {verf[0], verf[1]}, | 640 | .verf = {verf[0], verf[1]}, |
641 | .plus = plus, | 641 | .plus = plus, |
642 | .count = count, | 642 | .count = count, |
643 | .pages = &page | 643 | .pages = pages |
644 | }; | 644 | }; |
645 | struct nfs3_readdirres res = { | 645 | struct nfs3_readdirres res = { |
646 | .verf = verf, | 646 | .verf = verf, |