Bug 964216

Summary: xfs_repair: handle fragmented multiblock dir2 directories
Product: Red Hat Enterprise Linux 6 Reporter: Eric Sandeen <esandeen>
Component: xfsprogsAssignee: Eric Sandeen <esandeen>
Status: CLOSED ERRATA QA Contact: Boris Ranto <branto>
Severity: unspecified Docs Contact:
Priority: high    
Version: 6.4CC: bburns, bengland, bfoster, branto, dchinner, eguan, jkurik, perfbz, rwheeler
Target Milestone: rcKeywords: ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Fixed In Version: xfsprogs-3.1.1-11.el6 Doc Type: Bug Fix
Doc Text:
Previously, xfs_repair was unable to properly handle fragmented multiblock version 2 directories (Multiblock dir2 is only enabled with the "-n size=" mkfs.xfs option, where the size is greater than the file system block size). With this update, xfs_repair can operate on fragmented dir2 directories without errors.
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-11-21 21:20:19 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 976217    

Description Eric Sandeen 2013-05-17 14:51:47 UTC
RHS is recommending "-n 8k" for larger dir block size at mkfs time.

However, there are 2 bugs in xfs_repair if those 2 blocks aren't allocated contiguously:

9fe1cc862159b50651baa68a6b60ae0819d4f871 xfs_repair: handle fragmented multiblock dir2 in process_leaf_node_dir2()
b220548bf2e51f4a573b19b4a8b4b15856bd4a06 xfs_repair: Fix fragmented multiblock dir2 handling in blkmap_getn()

We need to get these backported to RHEL6's xfsprogs to handle this case.

This is tested in xfstests:

2a4ed91a018054c2ae187f3cd4ee26141f56234f xfstest 291: userspace vs. fragmented multiblock dir2

Comment 2 Ben England 2013-05-27 13:23:06 UTC
thx, added perf dept to cc

Comment 8 errata-xmlrpc 2013-11-21 21:20:19 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.