From f538d0ba5be39c52addff01c7ec31f0b90e57dfc Mon Sep 17 00:00:00 2001 From: Trond Myklebust Date: Mon, 16 May 2016 14:41:14 -0400 Subject: pNFS: Fix a leaked layoutstats flag Signed-off-by: Trond Myklebust Signed-off-by: Anna Schumaker --- fs/nfs/pnfs.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'fs/nfs/pnfs.c') diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c index 5b404d926e08..faea98281c75 100644 --- a/fs/nfs/pnfs.c +++ b/fs/nfs/pnfs.c @@ -2407,7 +2407,7 @@ pnfs_report_layoutstat(struct inode *inode, gfp_t gfp_flags) spin_lock(&inode->i_lock); if (!NFS_I(inode)->layout) { spin_unlock(&inode->i_lock); - goto out; + goto out_clear_layoutstats; } hdr = NFS_I(inode)->layout; pnfs_get_layout_hdr(hdr); @@ -2436,6 +2436,7 @@ out_free: kfree(data); out_put: pnfs_put_layout_hdr(hdr); +out_clear_layoutstats: smp_mb__before_atomic(); clear_bit(NFS_INO_LAYOUTSTATS, &nfsi->flags); smp_mb__after_atomic(); -- cgit v1.2.3