Re: [PATCH 2/3] m68k/page_no.h: force __va argument to be unsigned long

From: Michal Hocko
Date: Tue Jul 03 2018 - 11:14:10 EST


On Tue 03-07-18 08:05:35, Matthew Wilcox wrote:
> On Tue, Jul 03, 2018 at 06:03:16PM +0300, Mike Rapoport wrote:
> > On Tue, Jul 03, 2018 at 04:20:54PM +0200, Michal Hocko wrote:
> > > On Tue 03-07-18 13:29:54, Mike Rapoport wrote:
> > > > Add explicit casting to unsigned long to the __va() parameter
> > >
> > > Why is this needed?
> >
> > To make it consitent with other architecures and asm-generic :)
> >
> > But more importantly, __memblock_free_late() passes u64 to page_to_pfn().
>
> Why does memblock work in terms of u64 instead of phys_addr_t?

Yes, phys_addr_t was exactly that came to my mind as well. Casting
physical address to unsigned long just screams for potential problems.

--
Michal Hocko
SUSE Labs