On 7 Dec 2016, at 17:41, Trond Myklebust wrote:
On Dec 7, 2016, at 17:34, Benjamin Coddington <bcodding@xxxxxxxxxx>
wrote:
static
@@ -921,7 +930,7 @@ static int nfs_readdir(struct file *file, struct
dir_context *ctx)
desc->ctx = ctx;
desc->dir_cookie = &dir_ctx->dir_cookie;
desc->decode = NFS_PROTO(inode)->decode_dirent;
- desc->plus = nfs_use_readdirplus(inode, ctx) ? 1 : 0;
+ desc->plus = nfs_use_readdirplus(inode, ctx, dir_ctx) ? 1 : 0;
This fixes desc->plus at the beginning of the readdir() call. Perhaps
we
should instead check the value of ctx->use_readdir_plus in the call to
nfs_readdir_xdr_filler(), and just resetting cts->use_readdir_plus at
the
very end of nfs_readdir()?
I don't understand the functional difference. Is this just a
preference?
There must be something else happening.. dcache is getting under
pressure
pruned maybe, that causes a miss and then the process starts over?
Ben
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html