On 05/20/2013 02:52 AM, Dave Chinner wrote:
[ well, really patches 31..36 :) ]
More work on top of the original series of 30 patches, including
xfs_db support for parsing the v3 directory format.
Note that there are also two patches in here that convert both
xfs_db and xfs_repair to use the libxfs directory block type
definitions. While it may have once been convenient for them to have
a basic definition, it does not lend itself to making the code
support the v3 format quickly and concisely. Reusing the
libxfs/kernel structure definitions and abstraction means that the
code quickly becomes v3 aware and has just works.
Right now this patchset and the current kernel patchset (all the
attr fixes) runs through xfstests quite far on a 4k block size
filesystem - all the generic tests pass, and most of the XFS
specific tests that don't rely on write or attr output support in
xfs_db also pass.
I'll get the attr db support done tomorrow.....
This makes some improvement to the setup here: xfs/041 no longer
triggers a sure-fire "args->op_flags & XFS_DA_OP_OKNOENT" assertion.
This will take a re-review on my part of the xfs/[0-9][0-9][0-9] test set.
Here's how the `git am` session went, syntax removed because Ctrl-w word
removal in bash makes the script output unworkable:
# PATCH 1
Applying: xfs_repair: always use incore header for directory block checks
# PATCH 2
Applying: xfs_db: convert directory parsing to use libxfs structure
/usr/src/xfs/xfsprogs/.git/rebase-apply/patch:94: trailing whitespace.
if (be32_to_cpu(data->magic) == XFS_DIR2_BLOCK_MAGIC &&
warning: 1 line adds whitespace errors.
# PATCH 3
Applying: xfs_db: factor some common dir2 field parsing code.
# PATCH 4
Applying: xfs_db: update field printing for dir crc format changes.
# PATCH 5
Applying: xfs_repair: convert directory parsing to use libxfs structure
# PATCH 6
Applying: xfs_repair: make directory freespace table CRC format aware.