Subject: Re: linux-next: manual merge of the tip tree with the btrfs, zstd trees

From: Stephen Rothwell <[email-masked]>
Date: Wed, 26 Mar 2025 10:06:11 +1100

Hi all,

On Mon, 24 Mar 2025 16:34:17 +1100 Stephen Rothwell <[email-masked]> wrote:
>
> Today's linux-next merge of the tip tree got a conflict in:
> 
>   lib/zstd/common/portability_macros.h
> 
> between commit:
> 
>   65d1f5507ed2 ("zstd: Import upstream v1.5.7")
> 
> from the btrfs, zstd trees and commit:
> 
>   1400c87e6cac ("zstd: Increase DYNAMIC_BMI2 GCC version cutoff from 4.8 to 11.0 to work around compiler segfault")
> 
> from the tip tree.
> 
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging.  You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
> 
> -- 
> Cheers,
> Stephen Rothwell
> 
> diff --cc lib/zstd/common/portability_macros.h
> index 05286af72683,0dde8bf56595..000000000000
> --- a/lib/zstd/common/portability_macros.h
> +++ b/lib/zstd/common/portability_macros.h
> @@@ -59,15 -53,15 +59,15 @@@
>    * Enabled for clang & gcc >=4.8 on x86 when BMI2 isn't enabled by default.
>    */
>   #ifndef DYNAMIC_BMI2
>  -  #if ((defined(__clang__) && __has_attribute(__target__)) \
>  +#  if ((defined(__clang__) && __has_attribute(__target__)) \
>         || (defined(__GNUC__) \
> -           && (__GNUC__ >= 5 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8)))) \
> +           && (__GNUC__ >= 11))) \
>  -      && (defined(__x86_64__) || defined(_M_X64)) \
>  +      && (defined(__i386__) || defined(__x86_64__) || defined(_M_IX86) || defined(_M_X64)) \
>         && !defined(__BMI2__)
>  -  #  define DYNAMIC_BMI2 1
>  -  #else
>  -  #  define DYNAMIC_BMI2 0
>  -  #endif
>  +#    define DYNAMIC_BMI2 1
>  +#  else
>  +#    define DYNAMIC_BMI2 0
>  +#  endif
>   #endif
>   
>   /*

The tip tree commit is now in Linus' tree.

-- 
Cheers,
Stephen Rothwell