[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <F0E25DFF-8256-48FF-8B88-C0E3730A3E5E@jrtc27.com>
Date: Wed, 25 May 2022 23:07:35 +0100
From: Jessica Clarke <jrtc27@...c27.com>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: kernel test robot <lkp@...el.com>,
virtualization@...ts.linux-foundation.org, netdev@...r.kernel.org,
linux-staging@...ts.linux.dev, linux-riscv@...ts.infradead.org,
linux-rdma@...r.kernel.org, linux-pci@...r.kernel.org,
linux-parport@...ts.infradead.org, linux-omap@...r.kernel.org,
linux-mm@...ck.org, linux-fbdev@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, kvm@...r.kernel.org,
dri-devel@...ts.freedesktop.org, bpf@...r.kernel.org,
amd-gfx@...ts.freedesktop.org, alsa-devel@...a-project.org
Subject: Re: [linux-next:master] BUILD REGRESSION
8cb8311e95e3bb58bd84d6350365f14a718faa6d
On 25 May 2022, at 22:50, Andrew Morton <akpm@...ux-foundation.org> wrote:
>
> On Thu, 26 May 2022 05:35:20 +0800 kernel test robot <lkp@...el.com> wrote:
>
>> tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
>> branch HEAD: 8cb8311e95e3bb58bd84d6350365f14a718faa6d Add linux-next specific files for 20220525
>>
>> Error/Warning reports:
>>
>> ...
>>
>> Unverified Error/Warning (likely false positive, please contact us if interested):
>
> Could be so.
>
>> mm/shmem.c:1948 shmem_getpage_gfp() warn: should '(((1) << 12) / 512) << folio_order(folio)' be a 64 bit type?
>
> I've been seeing this one for a while. And from this report I can't
> figure out what tool emitted it. Clang?
>
>>
>> ...
>>
>> |-- i386-randconfig-m021
>> | `-- mm-shmem.c-shmem_getpage_gfp()-warn:should-((()-)-)-folio_order(folio)-be-a-bit-type
>
> If you're going to use randconfig then shouldn't you make the config
> available? Or maybe quote the KCONFIG_SEED - presumably there's a way
> for others to regenerate.
>
> Anyway, the warning seems wrong to me.
>
>
> #define PAGE_SIZE (_AC(1,UL) << PAGE_SHIFT)
>
> #define BLOCKS_PER_PAGE (PAGE_SIZE/512)
>
> inode->i_blocks += BLOCKS_PER_PAGE << folio_order(folio);
>
> so the RHS here should have unsigned long type. Being able to generate
> the cpp output would be helpful. That requires the .config.
This is i386, so an unsigned long is 32-bit, but i_blocks is a blkcnt_t
i.e. a u64, which makes the shift without a cast of the LHS fishy.
Jess
Powered by blists - more mailing lists