Commit 97a728f5 authored by Trond Myklebust's avatar Trond Myklebust
Browse files

NFS/pnfs: Fix dereference of layout cred in pnfs_layoutcommit_inode()



Ensure that the dereference of the layout cred is atomic with the
stateid.

Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent fc51b1cf
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -3137,10 +3137,10 @@ pnfs_layoutcommit_inode(struct inode *inode, bool sync)
	end_pos = nfsi->layout->plh_lwb;

	nfs4_stateid_copy(&data->args.stateid, &nfsi->layout->plh_stateid);
	data->cred = get_cred(nfsi->layout->plh_lc_cred);
	spin_unlock(&inode->i_lock);

	data->args.inode = inode;
	data->cred = get_cred(nfsi->layout->plh_lc_cred);
	nfs_fattr_init(&data->fattr);
	data->args.bitmask = NFS_SERVER(inode)->cache_consistency_bitmask;
	data->res.fattr = &data->fattr;