diff options
Diffstat (limited to 'fs/nfs/pagelist.c')
-rw-r--r-- | fs/nfs/pagelist.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/nfs/pagelist.c b/fs/nfs/pagelist.c index fd85618149a1..87a593c2b055 100644 --- a/fs/nfs/pagelist.c +++ b/fs/nfs/pagelist.c | |||
@@ -398,6 +398,7 @@ int nfs_scan_list(struct nfs_inode *nfsi, | |||
398 | pgoff_t idx_end; | 398 | pgoff_t idx_end; |
399 | int found, i; | 399 | int found, i; |
400 | int res; | 400 | int res; |
401 | struct list_head *list; | ||
401 | 402 | ||
402 | res = 0; | 403 | res = 0; |
403 | if (npages == 0) | 404 | if (npages == 0) |
@@ -418,10 +419,10 @@ int nfs_scan_list(struct nfs_inode *nfsi, | |||
418 | idx_start = req->wb_index + 1; | 419 | idx_start = req->wb_index + 1; |
419 | if (nfs_set_page_tag_locked(req)) { | 420 | if (nfs_set_page_tag_locked(req)) { |
420 | kref_get(&req->wb_kref); | 421 | kref_get(&req->wb_kref); |
421 | nfs_list_remove_request(req); | ||
422 | radix_tree_tag_clear(&nfsi->nfs_page_tree, | 422 | radix_tree_tag_clear(&nfsi->nfs_page_tree, |
423 | req->wb_index, tag); | 423 | req->wb_index, tag); |
424 | nfs_list_add_request(req, dst); | 424 | list = pnfs_choose_commit_list(req, dst); |
425 | nfs_list_add_request(req, list); | ||
425 | res++; | 426 | res++; |
426 | if (res == INT_MAX) | 427 | if (res == INT_MAX) |
427 | goto out; | 428 | goto out; |