Bug #1324

cfuse: 2-MDS snaptest2 doesn't let client unmount

Added by Greg Farnum almost 2 years ago. Updated almost 2 years ago.

Status:ResolvedStart date:07/15/2011
Priority:NormalDue date:
Assignee:Greg Farnum% Done:

0%

Category:ceph-fuseSpent time:2.50 hours
Target version:v0.32
Source: Severity:
Backport: Reviewed:
Tags:

Description

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.

History

#1 Updated by Greg Farnum almost 2 years ago

  • 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.

#2 Updated by Greg Farnum almost 2 years ago

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.

#3 Updated by Greg Farnum almost 2 years ago

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.

#4 Updated by Greg Farnum almost 2 years ago

  • Status changed from Testing to Resolved

Also available in: Atom PDF