]> Pileus Git - ~andy/linux/commit
ceph: fix cache revoke race
authorYan, Zheng <zheng.z.yan@intel.com>
Fri, 22 Nov 2013 05:50:45 +0000 (13:50 +0800)
committerYan, Zheng <zheng.z.yan@intel.com>
Tue, 21 Jan 2014 05:29:32 +0000 (13:29 +0800)
commit9563f88c1fa01341d125e396edc654a8dbcab2d2
tree421b041c32cd218720bc1369b0abe1ce353d4547
parentd1b87809fba3e07a261080837d1ae58d790b51a6
ceph: fix cache revoke race

handle following sequence of events:

- non-auth MDS revokes Fc cap. queue invalidate work
- auth MDS issues Fc cap through request reply. i_rdcache_gen gets
  increased.
- invalidate work runs. it finds i_rdcache_revoking != i_rdcache_gen,
  so it does nothing.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
fs/ceph/caps.c
fs/ceph/inode.c
fs/ceph/super.h