Searched hist:"97 a35d1e5fab9ff8de27814082b78b2fc9ad94f0" (Results 1 – 3 of 3) sorted by relevance
/openbmc/linux/fs/dlm/ |
H A D | lock.h | diff 97a35d1e5fab9ff8de27814082b78b2fc9ad94f0 Tue May 02 12:34:03 CDT 2006 David Teigland <teigland@redhat.com> [DLM] fix grant_after_purge softlockup
In dlm_grant_after_purge() we were holding a hash table read_lock while calling put_rsb() which potentially removes the rsb from the hash table, taking the same lock in write. Fix this by flagging rsb's ahead of time that have been purged. Then iteratively read_lock the hash table, find a flagged rsb, unlock, process rsb.
Signed-off-by: David Teigland <teigland@redhat.com> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
|
H A D | dlm_internal.h | diff 97a35d1e5fab9ff8de27814082b78b2fc9ad94f0 Tue May 02 12:34:03 CDT 2006 David Teigland <teigland@redhat.com> [DLM] fix grant_after_purge softlockup
In dlm_grant_after_purge() we were holding a hash table read_lock while calling put_rsb() which potentially removes the rsb from the hash table, taking the same lock in write. Fix this by flagging rsb's ahead of time that have been purged. Then iteratively read_lock the hash table, find a flagged rsb, unlock, process rsb.
Signed-off-by: David Teigland <teigland@redhat.com> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
|
H A D | lock.c | diff 97a35d1e5fab9ff8de27814082b78b2fc9ad94f0 Tue May 02 12:34:03 CDT 2006 David Teigland <teigland@redhat.com> [DLM] fix grant_after_purge softlockup
In dlm_grant_after_purge() we were holding a hash table read_lock while calling put_rsb() which potentially removes the rsb from the hash table, taking the same lock in write. Fix this by flagging rsb's ahead of time that have been purged. Then iteratively read_lock the hash table, find a flagged rsb, unlock, process rsb.
Signed-off-by: David Teigland <teigland@redhat.com> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
|