Re: [PATCH v3] net: stmmac: compare p->des0 and p->des1 with __le32 type values

From: Jakub Kicinski
Date: Sat May 20 2023 - 00:04:46 EST


On Sat, 20 May 2023 09:55:27 +0800 Min-Hua Chen wrote:
> >Can you try to fix the sparse tool instead? I believe it already
> >ignores such errors for the constant of 0, maybe it can be taught
> >to ignore all "isomorphic" values?
> >
>
> I downloaded the source code of sparse and I'm afraid that I cannot make
> 0xFFFFFFFF ignored easily. I've tried ~0 instead of 0xFFFFFF,
> but it did not work with current sparse.
>
> 0 is a special case mentioned in [1].
>
> """
> One small note: the constant integer “0” is special.
> You can use a constant zero as a bitwise integer type without
> sparse ever complaining. This is because “bitwise” (as the name
> implies) was designed for making sure that bitwise types don’t
> get mixed up (little-endian vs big-endian vs cpu-endian vs whatever),
> and there the constant “0” really _is_ special.
> """
>
> For 0xFFFFFFFF, it may look like a false alarm, but we can silence the
> sparse warning by taking a fix like mine and people can keep working on
> other sparse warnings easier.

We can make working with sparse easier by making sure it doesn't
generate false positive warnings :\

> (There are around 7000 sparse warning in ARCH=arm64 defconfig build and
> sometimes it is hard to remember all the false alarm cases)
>
> Could you consider taking this patch, please?

No. We don't take patches to address false positive static
checker warnings.