cfuse: 2-MDS snaptest2 doesn't let client unmount
|Assignee:||Greg Farnum||% Done:|
|Category:||ceph-fuse||Spent time:||2.50 hours|
On occasions when running snaptests-2 doesn't hit #1323, the client will happily unmount from the filesystem but the process won't exit because there are inodes still in the cache. It's probably a ref-counting bug. Logs in kai:~gregf/logs/snaptest2shutdownfail.
- Status changed from In Progress to Testing
queue_cap_snap takes a reference to the inode that's never put by anything as best I can tell. I've added one to the end of finish_cap_snap which I presume should handle it. Testing now.
Okay, that's not correct. Sage says this put() should be happening in handle_cap_flushsnap_ack, which is just never being called. Which makes sense for a 2-MDS issue.
And it turns out the client is unconditionally setting mseq to 0 and then the MDS is rejecting it if the auth has changed. Testing now.
- Status changed from Testing to Resolved
Also available in: Atom