linux-nfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] SQUASHME: pnfs: fix lock inversion in pnfs_layout_process
@ 2011-02-22 17:47 Benny Halevy
  0 siblings, 0 replies; only message in thread
From: Benny Halevy @ 2011-02-22 17:47 UTC (permalink / raw)
  To: linux-nfs; +Cc: Benny Halevy

Introduced in cab1647c Revert "pnfs-submit: wave2: remove cl_layoutrecalls list"

Signed-off-by: Benny Halevy <bhalevy@panasas.com>
---
 fs/nfs/pnfs.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c
index 5a47b76..c184e41 100644
--- a/fs/nfs/pnfs.c
+++ b/fs/nfs/pnfs.c
@@ -1045,7 +1045,6 @@ pnfs_layout_process(struct nfs4_layoutget *lgp)
 		goto out;
 	}
 
-	spin_lock(&ino->i_lock);
 	/* decrement needs to be done before call to pnfs_layoutget_blocked */
 	atomic_dec(&lo->plh_outstanding);
 	spin_lock(&clp->cl_lock);
@@ -1056,6 +1055,7 @@ pnfs_layout_process(struct nfs4_layoutget *lgp)
 	}
 	spin_unlock(&clp->cl_lock);
 
+	spin_lock(&ino->i_lock);
 	if (pnfs_layoutgets_blocked(lo, &res->stateid)) {
 		dprintk("%s forget reply due to state\n", __func__);
 		goto out_forget_reply;
-- 
1.7.3.4


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2011-02-22 17:47 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-02-22 17:47 [PATCH] SQUASHME: pnfs: fix lock inversion in pnfs_layout_process Benny Halevy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).