]> git.baikalelectronics.ru Git - kernel.git/commit
ocfs2: Wakeup the downconvert thread after a successful cancel convert
authorSunil Mushran <sunil.mushran@oracle.com>
Fri, 30 Jan 2009 01:12:31 +0000 (17:12 -0800)
committerMark Fasheh <mfasheh@suse.com>
Mon, 2 Feb 2009 22:20:19 +0000 (14:20 -0800)
commit7523cd3994ea4316eaf133bea7ceb777805131bc
tree823d8730f730e41204c62f645953fac5de9315a3
parentfa013c5c7789e467615a970eafe745500b10d72c
ocfs2: Wakeup the downconvert thread after a successful cancel convert

When two nodes holding PR locks on a resource concurrently attempt to
upconvert the locks to EX, the master sends a BAST to one of the nodes. This
message tells that node to first cancel convert the upconvert request,
followed by downconvert to a NL. Only when this lock is downconverted to NL,
can the master upconvert the first node's lock to EX.

While the fs was doing the cancel convert, it was forgetting to wake up the
dc thread after a successful cancel, leading to a deadlock.

Reported-and-Tested-by: David Teigland <teigland@redhat.com>
Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com>
Signed-off-by: Mark Fasheh <mfasheh@suse.com>
fs/ocfs2/dlmglue.c