]> git.baikalelectronics.ru Git - kernel.git/commit
dlm: always use GFP_NOFS
authorDavid Teigland <teigland@redhat.com>
Mon, 30 Nov 2009 22:34:43 +0000 (16:34 -0600)
committerDavid Teigland <teigland@redhat.com>
Mon, 30 Nov 2009 22:34:43 +0000 (16:34 -0600)
commitaeb080d05754a1cef50117bc14bafe50db5f28b5
tree9222c0c8921fda5b842c2d1007d911d47bd4fe7c
parent39bfcc6c679da0ba40f9d186140a8bf7d4c73465
dlm: always use GFP_NOFS

Replace all GFP_KERNEL and ls_allocation with GFP_NOFS.
ls_allocation would be GFP_KERNEL for userland lockspaces
and GFP_NOFS for file system lockspaces.

It was discovered that any lockspaces on the system can
affect all others by triggering memory reclaim in the
file system which could in turn call back into the dlm
to acquire locks, deadlocking dlm threads that were
shared by all lockspaces, like dlm_recv.

Signed-off-by: David Teigland <teigland@redhat.com>
14 files changed:
fs/dlm/config.c
fs/dlm/debug_fs.c
fs/dlm/dir.c
fs/dlm/dlm_internal.h
fs/dlm/lock.c
fs/dlm/lockspace.c
fs/dlm/lowcomms.c
fs/dlm/member.c
fs/dlm/memory.c
fs/dlm/netlink.c
fs/dlm/plock.c
fs/dlm/rcom.c
fs/dlm/requestqueue.c
fs/dlm/user.c