]>
git.apps.os.sepia.ceph.com Git - ceph.git/commit
client: fix readdir + cap recovation/reissue race
The current race:
- we start readdir
- mds revokes dir cap
- some file gets removed
- mds reissues dir cap
- we finish readdir and set I_COMPLETE
We should only set it if there have been no FILE_SHARED reissues during
the readdir.
Note that we still set I_COMPLETE even if we don't have the cap; that's
useless but harmless, since it is undefined without FILE_SHARED being
set.
Signed-off-by: Sage Weil <sage@newdream.net>