]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mds: force rdlock on any snapped inodes
authorSage Weil <sage@newdream.net>
Wed, 11 Nov 2009 23:47:28 +0000 (15:47 -0800)
committerSage Weil <sage@newdream.net>
Wed, 11 Nov 2009 23:47:28 +0000 (15:47 -0800)
commita600b2e8929eb1d36c2fd52bc8d93fa864b3c69a
tree13b880fa57acc328ad8a46e9214d1db846df2e97
parent91d10bb9a9b793badd15248b10e0ffad91fcf657
mds: force rdlock on any snapped inodes

When the client has an excl lock on an inode, and it's
stating a snapped version of it, we can't expect it to
put 2 and 2 together and look at it's head metadata.  If
the cap does not follow the snapid we're trying to stat, do
the full rdlock to force the snapped values back to the
mds so we can do the cow.

If there is nothing cow, the cap will get reissued with an
accurate follows value, and we won't have to do this again.
src/mds/Server.cc