From: Trond Myklebust Date: Mon, 16 May 2016 18:41:14 +0000 (-0400) Subject: pNFS: Fix a leaked layoutstats flag X-Git-Tag: v4.7-rc1~40^2~22 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=f538d0ba5be39c52addff01c7ec31f0b90e57dfc;p=karo-tx-linux.git pNFS: Fix a leaked layoutstats flag Signed-off-by: Trond Myklebust Signed-off-by: Anna Schumaker --- 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();