]> git.baikalelectronics.ru Git - kernel.git/commit
ceph: preallocate flock state without locks held
authorGreg Farnum <gregf@hq.newdream.net>
Fri, 17 Sep 2010 17:24:02 +0000 (10:24 -0700)
committerSage Weil <sage@newdream.net>
Wed, 20 Oct 2010 22:38:17 +0000 (15:38 -0700)
commite57698a306d80dd1543663fe9b54b2bbd9f60267
tree446381c8e8c7b592b47c2e50c32b1e40817fcfe1
parentcfd2711ca85d9e93887a1b90cb7f6fe335eb1551
ceph: preallocate flock state without locks held

When the lock_kernel() turns into lock_flocks() and a spinlock, we won't
be able to do allocations with the lock held.  Preallocate space without
the lock, and retry if the lock state changes out from underneath us.

Signed-off-by: Greg Farnum <gregf@hq.newdream.net>
Signed-off-by: Sage Weil <sage@newdream.net>
fs/ceph/locks.c
fs/ceph/mds_client.c