Re: [PATCH v3 19/23] arm64: mte: Add PTRACE_{PEEK,POKE}MTETAGS support
From: Catalin Marinas <catalin.marinas@arm.com>
Date: 2020-05-19 16:11:04
Also in:
linux-arch, linux-mm
On Mon, May 18, 2020 at 02:12:24PM -0300, Luis Machado wrote:
On 5/18/20 1:47 PM, Dave Martin wrote:quoted
Wrinkle: just because MTE is "off", pages might still be mapped with PROT_MTE and have arbitrary tags set on them, and the debugger perhaps needs a way to know that. Currently grubbing around in /proc is the only way to discover that. Dunno whether it matters.That is the sort of thing that may confused the debugger. If MTE is "off" (and thus the debugger doesn't need to validate tags), then the pages mapped with PROT_MTE that show up in /proc/<pid>/smaps should be ignored?
There is no such thing as global MTE "off". If the HWCAP is present, a user program can map an address with PROT_MTE and access tags. Maybe it uses it for extra storage, you never know, doesn't have to be heap allocation related.
I'm looking for a precise way to tell if MTE is being used or not for a particular process/thread. This, in turn, will tell debuggers when to look for PROT_MTE mappings in /proc/<pid>/smaps and when to validate tagged addresses. So far my assumption was that MTE will always be "on" when HWCAP2_MTE is present. So having HWCAP2_MTE means we have the NT_ARM_MTE regset and that PROT_MTE pages have to be checked.
Yes. I haven't figured out what to put in the regset yet, most likely the prctl value as it has other software-only controls like the tagged address ABI. -- Catalin _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel