- bz 272021: GFS2 - flocks from same process trip kernel BUG at fs/gfs2/glock.c:1118!
PATCH 1/1 - bz 272021: GFS2 - flocks from same process trip kernel BUG at fs/gfs2/glock.c:1118!
This patch adds a new flag to the gfs2_holder structure GL_FLOCK. It is set on holders of glocks representing flocks. This flag is checked in add_to_queue() and a process is permitted to queue more than one holder onto a glock if it is set. This solves the issue of a process not being able to do multiple flocks on the same file. Through a single descriptor, a process can now promote and demote flocks. Through multiple descriptors a process can now queue multiple flocks on the same file. There's still the problem of a process deadlocking itself (because gfs2 blocking locks are not interruptible) by queueing incompatible deadlock.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bz272021-git-new.patch
Type: text/x-patch
Size: 3496 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/cluster-devel/attachments/20070913/c050e346/attachment.bin>
Hi,
Now in the -nmw git tree. Thanks,
Steve.
Quoted 13 lines · Abhijith Das
This patch adds a new flag to the
gfs2_holderstructureGL_FLOCK. It is set on holders of glocks representing flocks. This flag is checked inadd_to_queue()and a process is permitted to queue more than one holder onto a glock if it is set. This solves the issue of a process not being able to do multiple flocks on the same file. Through a single descriptor, a process can now promote and demote flocks. Through multiple descriptors a process can now queue multiple flocks on the same file. There's still the problem of a process deadlocking itself (because gfs2 blocking locks are not interruptible) by queueing incompatible deadlock.Signed-off-by Abhijith Das <[email protected]>