• Dave Chinner's avatar
    xfs: add CRC checking to dir2 leaf blocks · 24df33b4
    Dave Chinner authored
    This addition follows the same pattern as the dir2 block CRCs.
    Seeing as both LEAF1 and LEAFN types need to changed at the same
    time, this is a pretty large amount of change. leaf block headers
    need to be abstracted away from the on-disk structures (struct
    xfs_dir3_icleaf_hdr), as do the base leaf entry locations.
    
    This header abstract allows the in-core header and leaf entry
    location to be passed around instead of the leaf block itself. This
    saves a lot of converting individual variables from on-disk format
    to host format where they are used, so there's a good chance that
    the compiler will be able to produce much more optimal code as it's
    not having to byteswap variables all over the place.
    Signed-off-by: default avatarDave Chinner <dchinner@redhat.com>
    Reviewed-by: default avatarBen Myers <bpm@sgi.com>
    Signed-off-by: default avatarBen Myers <bpm@sgi.com>
    24df33b4
xfs_dir2_block.c 37.2 KB