Forum | Documentation | Website | Blog

Skip to content
Snippets Groups Projects
  • Darrick J. Wong's avatar
    xfs: test dir/attr hash when loading module · 3cfb9290
    Darrick J. Wong authored
    Back in the 6.2-rc1 days, Eric Whitney reported a fstests regression in
    ext4 against generic/454.  The cause of this test failure was the
    unfortunate combination of setting an xattr name containing UTF8 encoded
    emoji, an xattr hash function that accepted a char pointer with no
    explicit signedness, signed type extension of those chars to an int, and
    the 6.2 build tools maintainers deciding to mandate -funsigned-char
    across the board.  As a result, the ondisk extended attribute structure
    written out by 6.1 and 6.2 were not the same.
    
    This discrepancy, in fact, had been noticeable if a filesystem with such
    an xattr were moved between any two architectures that don't employ the
    same signedness of a raw "char" declaration.  The only reason anyone
    noticed is that x86 gcc defaults to signed, and no such -funsigned-char
    update was made to e2fsprogs, so e2fsck immediately started reporting
    data corruption.
    
    After a day and a half of discussing how to handle this use case...
    3cfb9290
xfs_dahash_test.h 276 B