]> git.baikalelectronics.ru Git - kernel.git/commit
GFS2: recovery stuck on transaction lock
authorBob Peterson <rpeterso@redhat.com>
Wed, 23 Jun 2010 15:44:47 +0000 (11:44 -0400)
committerSteven Whitehouse <swhiteho@redhat.com>
Thu, 15 Jul 2010 08:05:57 +0000 (09:05 +0100)
commit031f00f63f1df228c57edd130d09f2c707d41f31
tree4057c89535f6204d95f28950809fcb4b1c25dfa4
parent62b17bd36b3d5115c82a5e95ddab1fd1b36a4f81
GFS2: recovery stuck on transaction lock

This patch fixes bugzilla bug #590878: GFS2: recovery stuck on
transaction lock.  We set the frozen flag on the glock when we receive
a completion that cannot be delivered due to blocked locks. At that
point we check to see whether the first waiting holder has the noexp
flag set. If the noexp lock is queued later, then we need to unfreeze
the glock at that point in time, namely, in the glock work function.

This patch was originally written by Steve Whitehouse, but since
he's on holiday, I'm submitting it.  It's been well tested with a
complex recovery test called revolver.

Signed-off-by: Steve Whitehouse <swhiteho@redhat.com>
Signed-off-by: Bob Peterson <rpeterso@redhat.com>
fs/gfs2/glock.c