summaryrefslogtreecommitdiff
path: root/fs/nfs/internal.h
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@hammerspace.com>2020-03-20 16:04:06 -0400
committerTrond Myklebust <trond.myklebust@hammerspace.com>2020-03-27 16:34:34 -0400
commita9901899b649dc80ef75c14d6d78059cae14def7 (patch)
tree472457bf22d210879706b9916a285339761dc8a2 /fs/nfs/internal.h
parente3b9f7e60b71d3a652ab80665e724d22d61dd629 (diff)
downloadlwn-a9901899b649dc80ef75c14d6d78059cae14def7.tar.gz
lwn-a9901899b649dc80ef75c14d6d78059cae14def7.zip
pNFS: Add infrastructure for cleaning up per-layout commit structures
Ensure that both the file and flexfiles layout types clean up when freeing the layout segments. Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Diffstat (limited to 'fs/nfs/internal.h')
-rw-r--r--fs/nfs/internal.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/nfs/internal.h b/fs/nfs/internal.h
index 4a1adad3740f..683146a51599 100644
--- a/fs/nfs/internal.h
+++ b/fs/nfs/internal.h
@@ -534,9 +534,11 @@ void nfs_clear_pnfs_ds_commit_verifiers(struct pnfs_ds_commit_info *cinfo)
pnfs_bucket_clear_pnfs_ds_commit_verifiers(cinfo->buckets,
cinfo->nbuckets);
- list_for_each_entry(array, &cinfo->commits, cinfo_list)
+ rcu_read_lock();
+ list_for_each_entry_rcu(array, &cinfo->commits, cinfo_list)
pnfs_bucket_clear_pnfs_ds_commit_verifiers(array->buckets,
array->nbuckets);
+ rcu_read_unlock();
}
#else
static inline