[PATCH v7 29/29] arm64: mte: Add Memory Tagging Extension documentation
Paul Eggert
eggert at cs.ucla.edu
Thu Aug 20 13:27:43 EDT 2020
On 8/20/20 9:43 AM, Szabolcs Nagy wrote:
> the compat issue with this is existing code
> using pointer top bits which i assume faults
> when dereferenced with the mte checks enabled.
> (although this should be very rare since
> top byte ignore on deref is aarch64 specific.)
Does anyone know of significant aarch64-specific application code that depends
on top byte ignore? I would think it's so rare (nonexistent?) as to not be worth
worrying about.
Even in the bad old days when Emacs used pointer top bits for typechecking, it
carefully removed those bits before dereferencing. Any other reasonably-portable
application would have to do the same of course.
This whole thing reminds me of the ancient IBM S/360 mainframes that were
documented to ignore the top 8 bits of 32-bit addresses merely because a single
model (the IBM 360/30, circa 1965) was so underpowered that it couldn't quickly
check that the top bits were zero. This has caused countless software hassles
over the years. Even today, the IBM z-Series hardware and software still
supports 24-bit addressing mode because of that early-1960s design mistake. See:
Mashey JR. The Long Road to 64 Bits. ACM Queue. 2006-10-10.
https://queue.acm.org/detail.cfm?id=1165766
More information about the linux-arm-kernel
mailing list