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

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



Hi,

On Wed, Aug 17, 2016 at 03:39:36PM +0100, Leif Lindholm wrote:
> We have an 'interesting' situation ahead of us, or indeed some of us
> have already fallen into it:

> 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.

Thanks,
Mark.


Reply to: