aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/blocklayout/blocklayout.c
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@hammerspace.com>2020-02-18 17:14:40 -0500
committerTrond Myklebust <trond.myklebust@hammerspace.com>2020-03-16 08:34:29 -0400
commitcf6605d1940a5ead7f2de78b5926f9c3179cda41 (patch)
tree3349ea80e11c3e57fd864c535ce7d7b0ff8b081d /fs/nfs/blocklayout/blocklayout.c
parentNFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid() (diff)
downloadlinux-dev-cf6605d1940a5ead7f2de78b5926f9c3179cda41.tar.xz
linux-dev-cf6605d1940a5ead7f2de78b5926f9c3179cda41.zip
NFSv4: Ensure layout headers are RCU safe
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Diffstat (limited to 'fs/nfs/blocklayout/blocklayout.c')
-rw-r--r--fs/nfs/blocklayout/blocklayout.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/blocklayout/blocklayout.c b/fs/nfs/blocklayout/blocklayout.c
index 690221747b47..d1a0e2c8b1b4 100644
--- a/fs/nfs/blocklayout/blocklayout.c
+++ b/fs/nfs/blocklayout/blocklayout.c
@@ -476,7 +476,7 @@ static void bl_free_layout_hdr(struct pnfs_layout_hdr *lo)
err = ext_tree_remove(bl, true, 0, LLONG_MAX);
WARN_ON(err);
- kfree(bl);
+ kfree_rcu(bl, bl_layout.plh_rcu);
}
static struct pnfs_layout_hdr *__bl_alloc_layout_hdr(struct inode *inode,