From fe481246da499ecc57e1297d2b066ea71a2e174f Mon Sep 17 00:00:00 2001 From: Trond Myklebust Date: Fri, 24 Sep 2010 18:49:43 -0400 Subject: [PATCH] --- yaml --- r: 217069 b: refs/heads/master c: baf57a09e9d87b14be5e2788828169394a2525ab h: refs/heads/master i: 217067: 74e7003b22bf3e95a10cdf52d008a42510864055 v: v3 --- [refs] | 2 +- trunk/fs/nfs/dir.c | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 5847db50fa33..30229c85c8a3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d1bacf9eb2fd0e7ef870acf84b9e3b157dcfa7dc +refs/heads/master: baf57a09e9d87b14be5e2788828169394a2525ab diff --git a/trunk/fs/nfs/dir.c b/trunk/fs/nfs/dir.c index f77243907a08..33b0ce7a97be 100644 --- a/trunk/fs/nfs/dir.c +++ b/trunk/fs/nfs/dir.c @@ -491,10 +491,6 @@ static inline int readdir_search_pagecache(nfs_readdir_descriptor_t *desc) { int res = -EAGAIN; - desc->page_index = 0; - - if (*desc->dir_cookie == 0) - desc->cache_entry_index = 0; while (1) { res = find_cache_page(desc); @@ -589,6 +585,7 @@ int uncached_readdir(nfs_readdir_descriptor_t *desc, void *dirent, goto out_release; } + desc->page_index = 0; desc->page = page; status = nfs_do_filldir(desc, dirent, filldir); @@ -653,6 +650,7 @@ static int nfs_readdir(struct file *filp, void *dirent, filldir_t filldir) if (res == -ETOOSMALL && desc->plus) { clear_bit(NFS_INO_ADVISE_RDPLUS, &NFS_I(inode)->flags); nfs_zap_caches(inode); + desc->page_index = 0; desc->plus = 0; desc->eof = 0; continue;