Re: 3.5-rc4: BTRFS unmountable after hard lockup
From: Josef Bacik <hidden>
Date: 2012-06-26 12:49:19
On Mon, Jun 25, 2012 at 09:47:33PM -0600, Liu Bo wrote:
On 06/26/2012 06:18 AM, David Sterba wrote:quoted
3756 if (root->fs_info->log_root_recovering) { 3757 BUG_ON(!test_bit(BTRFS_INODE_HAS_ORPHAN_ITEM, 3758 &BTRFS_I(inode)->runtime_flags)); 3759 goto no_delete; 3760 } and it happened during log replay, as you found already, fixable by running the zero-log utility. Another way is to mount read-only, this skips log replay. I think there could be a logic error, as this probably happens only during log replay when the orphan bit is not in sync with link count, but I saw that this should be handled in the fixup_inode_link_counts call path. CCing Josef, if he has an idea.It is a logic error, but mostly a finger wrong from Josef IMO... :) I'll send a patch for it.
Heh oops, sorry about that ;), Josef