On Thu 2015-04-16 12:09:54, Ingo Molnar wrote:
>
> * Pavel Machek <[email protected]> wrote:
>
> > The compiler is right, the code is tricky, but it is also correct
> > AFAICT.
> >
> > Signed-off-by: Pavel Machek <[email protected]>
> >
> > diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c
> > index fdf617c..8a8dce8 100644
> > --- a/arch/x86/mm/ioremap.c
> > +++ b/arch/x86/mm/ioremap.c
> > @@ -341,7 +341,7 @@ void *xlate_dev_mem_ptr(phys_addr_t phys)
> >
> > addr = (void __force *)ioremap_cache(start, PAGE_SIZE);
> > if (addr)
> > - addr = (void *)((unsigned long)addr | (phys & ~PAGE_MASK));
> > + addr = (void *)((unsigned long)addr | (unsigned long) (phys &
> > ~PAGE_MASK));
>
> What warning did it generate and which compiler version?
CC arch/x86/mm/ioremap.o
arch/x86/mm/ioremap.c: In function ‘xlate_dev_mem_ptr’:
arch/x86/mm/ioremap.c:363:10: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
addr = (void *)((unsigned long)addr | (phys & ~PAGE_MASK));
^
LD arch/x86/mm/built-in.o
pavel@amd:/data/l/linux$ gcc --version
gcc (Debian 4.9.2-10) 4.9.2
(Patch should apply to today's 4.1-rc0, too).
Best regards,
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures)
http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/