Re: [PATCH] x86/mm: vmemmap and vmalloc base addressess are usngined longs

From: Thomas Gleixner
Date: Thu Apr 26 2018 - 08:50:38 EST


On Thu, 26 Apr 2018, Jiri Kosina wrote:
> On Mon, 16 Apr 2018, Kirill A. Shutemov wrote:
>
> > > > > Commits 9b46a051e4 ("x86/mm: Initialize vmemmap_base at boot-time") and
> > > > > a7412546d8 ("x86/mm: Adjust vmalloc base and size at boot-time") lost the
> > > > > type information for __VMALLOC_BASE_L4, __VMALLOC_BASE_L5,
> > > > > __VMEMMAP_BASE_L4 and __VMEMMAP_BASE_L5 constants.
> > > > >
> > > > > Let's declare them explicitly unsigned long again.
> > > >
> > > > It is just cosmetics, right? I mean these literals are 'unsigned long'
> > > > anyway.
> > >
> > > Yeah, I can't imagine this particular case leading to any overflow
> > > scenario, as the literal is big enough to be automatically treated as
> > > unsigned long by the compiler, but it shuts up sparse which treats this as
> > > a generic case (where the missing UL might be a problem), and totally
> > > pollutes the build output.
> > >
> > > Either we put the 'UL' there, or teach sparse about figuring out the
> > > 'closer bigger fitting type' for hexadecimal literals, which might be more
> > > tricky.
> >
> > I don't have a problem with the patch:
> >
> > Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
>
> ping, please?
>
> sparse build is still noisy like hell :/

/me goes to dig it out in the pile ....