Re: [PATCH] xfs_repair: fix incorrect dabtree hashval comparison

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Mar 14, 2023 at 06:01:55PM -0700, Darrick J. Wong wrote:
> From: Darrick J. Wong <djwong@xxxxxxxxxx>
> 
> If an xattr structure contains enough names with the same hash value to
> fill multiple xattr leaf blocks with names all hashing to the same
> value, then the dabtree nodes will contain consecutive entries with the
> same hash value.
> 
> This causes false corruption reports in xfs_repair because it's not
> expecting such a huge same-hashing structure.  Fix that.
> 
> Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx>

Looks good. Will test.

Reviewed-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx>

> ---
>  repair/da_util.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/repair/da_util.c b/repair/da_util.c
> index 7239c2e2c64..b229422c81e 100644
> --- a/repair/da_util.c
> +++ b/repair/da_util.c
> @@ -330,7 +330,7 @@ _("%s block used/count inconsistency - %d/%hu\n"),
>  	/*
>  	 * hash values monotonically increasing ???
>  	 */
> -	if (cursor->level[this_level].hashval >=
> +	if (cursor->level[this_level].hashval >
>  				be32_to_cpu(nodehdr.btree[entry].hashval)) {
>  		do_warn(
>  _("%s block hashvalue inconsistency, expected > %u / saw %u\n"),

-- 
Carlos Maiolino



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux