Commit 9947a06d authored by Andreas Gruenbacher's avatar Andreas Gruenbacher
Browse files

gfs2: do_xmote fixes



Function do_xmote() is called with the glock spinlock held.  Commit
86934198 added a 'goto skip_inval' statement at the beginning of the
function to further below where the glock spinlock is expected not to be
held anymore.  Then it added code there that requires the glock spinlock
to be held.  This doesn't make sense; fix this up by dropping and
retaking the spinlock where needed.

In addition, when ->lm_lock() returned an error, do_xmote() didn't fail
the locking operation, and simply left the glock hanging; fix that as
well.  (This is a much older error.)

Fixes: 86934198 ("gfs2: Clear flags when withdraw prevents xmote")
Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
parent 1cd28e15
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment