ceph: do not touch_caps while iterating over caps list
authorSage Weil <sage@newdream.net>
Tue, 22 Dec 2009 04:40:34 +0000 (20:40 -0800)
committerSage Weil <sage@newdream.net>
Wed, 23 Dec 2009 16:17:14 +0000 (08:17 -0800)
commit5dacf09121ffb2e5fc7d15b78cae0b77042a1935
tree8a4ec2fde459f93936a91644d024673d37347408
parent7067f797b8409f1e10ec95ac2c1e17a200173d13
ceph: do not touch_caps while iterating over caps list

Avoid confusing iterate_session_caps(), flag the session while we are
iterating so that __touch_cap does not rearrange items on the list.

All other modifiers of session->s_caps do so under the protection of
s_mutex.

Signed-off-by: Sage Weil <sage@newdream.net>
fs/ceph/caps.c
fs/ceph/mds_client.c
fs/ceph/mds_client.h