RE: [PATCH] ARC: Use 40-bit physical page mask for PAE
From: Vladimir Isaev
Date: Mon Apr 26 2021 - 12:43:33 EST
Hi,
On Monday, April 26, 2021 7:30 PM, Vineet Gupta wrote:
> On 4/26/21 3:08 AM, Vladimir Isaev wrote:
>
> >
> > #endif /* _UAPI__ASM_ARC_PAGE_H */
> > diff --git a/arch/arc/mm/ioremap.c b/arch/arc/mm/ioremap.c
> > index fac4adc90204..eb109d57d544 100644
> > --- a/arch/arc/mm/ioremap.c
> > +++ b/arch/arc/mm/ioremap.c
> > @@ -71,8 +71,8 @@ void __iomem *ioremap_prot(phys_addr_t paddr,
> unsigned long size,
> > prot = pgprot_noncached(prot);
> >
> > /* Mappings have to be page-aligned */
> > - off = paddr & ~PAGE_MASK;
>
> This is offset *within* a page so upper bits must not matter. In fact,
> with this a bogus offset like 0xFF_FFFFFFFF can turn into something
> weird such as 0xFF_00000000
I understand, but idea here is to use PHYSICAL_PAGE_MASK/PAGE_MASK_PHYS
for any phys_addr_t variable without thinking. So if off is actually offset for
virtual address we can use unsigned long for it.
Thank you,
Vladimir Isaev