On Wed, 10 Feb 2021 18:03:16 +0000, Catalin Marinas wrote:
The ptrace(PTRACE_PEEKMTETAGS) implementation checks whether the user page has valid tags (mapped with PROT_MTE) by testing the PG_mte_tagged page flag. If this bit is cleared, ptrace(PTRACE_PEEKMTETAGS) returns -EIO.
A newly created (PROT_MTE) mapping points to the zero page which had its tags zeroed during cpu_enable_mte(). If there were no prior writes to this mapping, ptrace(PTRACE_PEEKMTETAGS) fails with -EIO since the zero page does not have the PG_mte_tagged flag set.
[...]
Applied to arm64 (for-next/fixes), thanks!
[1/1] arm64: mte: Allow PTRACE_PEEKMTETAGS access to the zero page https://git.kernel.org/arm64/c/68d54ceeec0e