xfs: revert "xfs: fix rmap key and record comparison functions"
authorDarrick J. Wong <darrick.wong@oracle.com>
Thu, 19 Nov 2020 23:17:50 +0000 (15:17 -0800)
committerDarrick J. Wong <darrick.wong@oracle.com>
Thu, 19 Nov 2020 23:17:50 +0000 (15:17 -0800)
commiteb8409071a1d47e3593cfe077107ac46853182ab
tree300ec60cd9ad8fbf93fda120d3fb3e5b10b1e43e
parent883a790a84401f6f55992887fd7263d808d4d05d
xfs: revert "xfs: fix rmap key and record comparison functions"

This reverts commit 6ff646b2ceb0eec916101877f38da0b73e3a5b7f.

Your maintainer committed a major braino in the rmap code by adding the
attr fork, bmbt, and unwritten extent usage bits into rmap record key
comparisons.  While XFS uses the usage bits *in the rmap records* for
cross-referencing metadata in xfs_scrub and xfs_repair, it only needs
the owner and offset information to distinguish between reverse mappings
of the same physical extent into the data fork of a file at multiple
offsets.  The other bits are not important for key comparisons for index
lookups, and never have been.

Eric Sandeen reports that this causes regressions in generic/299, so
undo this patch before it does more damage.

Reported-by: Eric Sandeen <sandeen@sandeen.net>
Fixes: 6ff646b2ceb0 ("xfs: fix rmap key and record comparison functions")
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
fs/xfs/libxfs/xfs_rmap_btree.c