arm64: mm: permit use of tagged pointers at EL0
authorWill Deacon <will.deacon@arm.com>
Wed, 12 Jun 2013 15:28:04 +0000 (16:28 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Tue, 3 Sep 2013 09:18:02 +0000 (10:18 +0100)
commitd50240a5f6ceaf690a77b0fccb17be51cfa151c2
tree843603100f6987bf50a4e40713121c1e2a323b7f
parent909e3ee4119f87b85c6e1b8534b2287ed1ea3ca2
arm64: mm: permit use of tagged pointers at EL0

TCR.TBI0 can be used to cause hardware address translation to ignore the
top byte of userspace virtual addresses. Whilst not especially useful in
standard C programs, this can be used by JITs to `tag' pointers with
various pieces of metadata.

This patch enables this bit for AArch64 Linux, and adds a new file to
Documentation/arm64/ which describes some potential caveats when using
tagged virtual addresses.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Documentation/arm64/tagged-pointers.txt [new file with mode: 0644]
arch/arm64/include/asm/pgtable-hwdef.h
arch/arm64/kernel/entry.S
arch/arm64/mm/proc.S