summaryrefslogtreecommitdiffstats
path: root/fs/nfs/objlayout
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@primarydata.com>2015-03-09 15:23:35 -0400
committerTrond Myklebust <trond.myklebust@primarydata.com>2015-03-27 12:32:24 -0400
commit84a80f62f71beac20a426709c04b49f2bd352291 (patch)
tree8a6da9805e36e26425a2e482e6233dabebca60ca /fs/nfs/objlayout
parent2854475f6c612d59901d51c358abd05643278b53 (diff)
downloadblackbird-op-linux-84a80f62f71beac20a426709c04b49f2bd352291.tar.gz
blackbird-op-linux-84a80f62f71beac20a426709c04b49f2bd352291.zip
NFSv4.1: Convert pNFS deviceid to use kfree_rcu()
Use of synchronize_rcu() when unmounting and potentially freeing a lot of deviceids is problematic. There really is no reason why we can't just use kfree_rcu() here. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'fs/nfs/objlayout')
-rw-r--r--fs/nfs/objlayout/objio_osd.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/objlayout/objio_osd.c b/fs/nfs/objlayout/objio_osd.c
index 24e1d7403c0b..8b5e0e687d5e 100644
--- a/fs/nfs/objlayout/objio_osd.c
+++ b/fs/nfs/objlayout/objio_osd.c
@@ -57,7 +57,7 @@ objio_free_deviceid_node(struct nfs4_deviceid_node *d)
dprintk("%s: free od=%p\n", __func__, de->od.od);
osduld_put_device(de->od.od);
- kfree(de);
+ kfree_rcu(d, rcu);
}
struct objio_segment {
OpenPOWER on IntegriCloud