diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2005-06-22 13:16:30 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2005-06-22 16:07:39 -0400 |
commit | c6a556b88adfacd2af90be84357c8165d716c27d (patch) | |
tree | b63d477180052d3d1edabffb51f3fdfe4f699866 /fs/nfs/read.c | |
parent | ab0a3dbedc51037f3d2e22ef67717a987b3d15e2 (diff) |
[PATCH] NFS: Make searching and waiting on busy writeback requests more efficient.
Basically copies the VFS's method for tracking writebacks and applies
it to the struct nfs_page.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/read.c')
-rw-r--r-- | fs/nfs/read.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/fs/nfs/read.c b/fs/nfs/read.c index a0042fb58634..6f866b8aa2d5 100644 --- a/fs/nfs/read.c +++ b/fs/nfs/read.c | |||
@@ -173,7 +173,6 @@ static int nfs_readpage_async(struct nfs_open_context *ctx, struct inode *inode, | |||
173 | if (len < PAGE_CACHE_SIZE) | 173 | if (len < PAGE_CACHE_SIZE) |
174 | memclear_highpage_flush(page, len, PAGE_CACHE_SIZE - len); | 174 | memclear_highpage_flush(page, len, PAGE_CACHE_SIZE - len); |
175 | 175 | ||
176 | nfs_lock_request(new); | ||
177 | nfs_list_add_request(new, &one_request); | 176 | nfs_list_add_request(new, &one_request); |
178 | nfs_pagein_one(&one_request, inode); | 177 | nfs_pagein_one(&one_request, inode); |
179 | return 0; | 178 | return 0; |
@@ -185,7 +184,6 @@ static void nfs_readpage_release(struct nfs_page *req) | |||
185 | 184 | ||
186 | nfs_clear_request(req); | 185 | nfs_clear_request(req); |
187 | nfs_release_request(req); | 186 | nfs_release_request(req); |
188 | nfs_unlock_request(req); | ||
189 | 187 | ||
190 | dprintk("NFS: read done (%s/%Ld %d@%Ld)\n", | 188 | dprintk("NFS: read done (%s/%Ld %d@%Ld)\n", |
191 | req->wb_context->dentry->d_inode->i_sb->s_id, | 189 | req->wb_context->dentry->d_inode->i_sb->s_id, |
@@ -553,7 +551,6 @@ readpage_async_filler(void *data, struct page *page) | |||
553 | } | 551 | } |
554 | if (len < PAGE_CACHE_SIZE) | 552 | if (len < PAGE_CACHE_SIZE) |
555 | memclear_highpage_flush(page, len, PAGE_CACHE_SIZE - len); | 553 | memclear_highpage_flush(page, len, PAGE_CACHE_SIZE - len); |
556 | nfs_lock_request(new); | ||
557 | nfs_list_add_request(new, desc->head); | 554 | nfs_list_add_request(new, desc->head); |
558 | return 0; | 555 | return 0; |
559 | } | 556 | } |