]> git.openfabrics.org - ~shefty/rdma-dev.git/commit
GFS2: Fix glock deallocation race
authorSteven Whitehouse <swhiteho@redhat.com>
Wed, 9 Mar 2011 10:58:04 +0000 (10:58 +0000)
committerSteven Whitehouse <swhiteho@redhat.com>
Wed, 9 Mar 2011 10:58:04 +0000 (10:58 +0000)
commitfc0e38dae645f65424d1fb5d2a938aab8ce48a58
tree8b0a89a0de01a0504a002a184a290a53545fce82
parent662e3a551b468c7338f5291d7a00389fe85885e2
GFS2: Fix glock deallocation race

This patch fixes a race in deallocating glocks which was introduced
in the RCU glock patch. We need to ensure that the glock count is
kept correct even in the case that there is a race to add a new
glock into the hash table. Also, to avoid having to wait for an
RCU grace period, the glock counter can be decremented before
call_rcu() is called.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
fs/gfs2/glock.c
fs/gfs2/glock.h
fs/gfs2/lock_dlm.c
fs/gfs2/ops_fstype.c