On 2 Feb 2020, at 17:53, Trond Myklebust wrote: > Now that the page cache locking is repaired, we should be able to > switch to using iterate_shared() for improved concurrency when > doing readdir(). > > Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx> > --- > fs/nfs/dir.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c > index 60387dec9032..803e6fec0266 100644 > --- a/fs/nfs/dir.c > +++ b/fs/nfs/dir.c > @@ -58,7 +58,7 @@ static void nfs_readdir_clear_array(struct page*); > const struct file_operations nfs_dir_operations = { > .llseek = nfs_llseek_dir, > .read = generic_read_dir, > - .iterate = nfs_readdir, > + .iterate_shared = nfs_readdir, > .open = nfs_opendir, > .release = nfs_closedir, > .fsync = nfs_fsync_dir, Jeez, it makes a lot of sense just to use the page lock. Wish I could have thought of that a long time ago. Thanks for this, we'll send it through some testing, but it looks good to me. Reviewed-by: Benjamin Coddington <bcodding@xxxxxxxxxx> Ben