[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: arm64 pointer tagging, VA-bits, the end of the world...



On Wed, Aug 17, 2016 at 04:03:07PM +0100, Mark Rutland wrote:
> > ARM64 platforms with > 512GB between the lowest and highest RAM
> > addresses end up getting their amount of usable memory truncated if
> > the kernel is built for 39-bit VA (which is what currently happens for
> > Debian kernels). For 4.7, the arm64 defconfig was changed to enable
> > 48-bit VA by default.
> 
> > The problem is - some pieces of software have had time to be written
> > in a ... let's charitably call it a "focused on amd64" fasion ... with
> > the embedded assumption that anything above virtual address bit 44 is
> > a pointer-tag free-for-all.
> 
> I suspect that we're likely to fall further into this.
> 
> ARMv8.2 bumps the maximum address limit to 52 bits [1]. Architecturally,
> only the upper 8 bits of address are reserved for tagging (and this has
> been the case since the original ARMv8-A release), and all other bits
> are reserved.
> 
> Given the above, it seems possible/likely that we may see address spaces
> of up to 56 bits in future.
> 
> So shuffling bits along a few places is only likely to buy us some time,
> and won't solve the problem entirely.

Absolutely - but it's still something we need to do, now.

And I'm hoping that by the time > 48-bit VA becomes an issue, it will
be an issue for Intel also, and we won't need to do all of the lifting
on the ARM side.

/
    Leif


Reply to: