RE: x86/csum: Remove unnecessary odd handling

From: David Laight
Date: Sat Sep 23 2023 - 17:13:33 EST


From: Noah Goldstein
> Sent: 23 September 2023 15:05
>
> On Fri, Sep 22, 2023 at 10:25 PM kernel test robot <lkp@xxxxxxxxx> wrote:
> >
> > Hi Noah,
> >
> > kernel test robot noticed the following build warnings:
> >
> > [auto build test WARNING on tip/x86/core]
> > [also build test WARNING on tip/master tip/auto-latest linus/master v6.6-rc2 next-20230921]
> > [If your patch is applied to the wrong git tree, kindly drop us a note.
> > And when submitting patch, we suggest to use '--base' as documented in
> > https://git-scm.com/docs/git-format-patch#_base_tree_information]
> >
> > url: https://github.com/intel-lab-lkp/linux/commits/Noah-Goldstein/x86-csum-Remove-unnecessary-
> odd-handling/20230921-032450
> > base: tip/x86/core
> > patch link: https://lore.kernel.org/r/20230920192300.3772199-1-goldstein.w.n%40gmail.com
> > patch subject: x86/csum: Remove unnecessary odd handling
> > config: x86_64-randconfig-121-20230921 (https://download.01.org/0day-
> ci/archive/20230923/202309231130.ZI5MdlDc-lkp@xxxxxxxxx/config)
> > compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
> > reproduce (this is a W=1 build): (https://download.01.org/0day-
> ci/archive/20230923/202309231130.ZI5MdlDc-lkp@xxxxxxxxx/reproduce)
> >
> > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > the same patch/commit), kindly add following tags
> > | Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > | Closes: https://lore.kernel.org/oe-kbuild-all/202309231130.ZI5MdlDc-lkp@xxxxxxxxx/
> >
> > sparse warnings: (new ones prefixed by >>)
> > >> arch/x86/lib/csum-partial_64.c:16:45: sparse: sparse: incorrect type in return expression
> (different base types) @@ expected restricted __wsum @@ got unsigned long long @@
> > arch/x86/lib/csum-partial_64.c:16:45: sparse: expected restricted __wsum
> > arch/x86/lib/csum-partial_64.c:16:45: sparse: got unsigned long long
> > >> arch/x86/lib/csum-partial_64.c:16:45: sparse: sparse: incorrect type in return expression
> (different base types) @@ expected restricted __wsum @@ got unsigned long long @@
> > arch/x86/lib/csum-partial_64.c:16:45: sparse: expected restricted __wsum
> > arch/x86/lib/csum-partial_64.c:16:45: sparse: got unsigned long long
> >
> > vim +16 arch/x86/lib/csum-partial_64.c
> >
> > 13
> > 14 static inline __wsum csum_finalize_sum(u64 temp64)
> > 15 {
> > > 16 return (temp64 + ror64(temp64, 32)) >> 32;
> > 17 }
> > 18
>
> Just needs a `(__wsum)` cast. Should I post a new patch?

It'll need to be a (__force __wsum) cast.

I think new patches are expected...

David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)