kselftest/arm64: mte: user_mem: introduce tag_offset and tag_len
These can be used to place an MTE tag at an address that is not at a page size boundary. The kernel prior to 295cf156 ("arm64: Avoid premature usercopy failure"), would infinite loop if an MTE tag was placed not at a PAGE_SIZE boundary. This is because the kernel checked if the pages were readable by checking the first byte of each page, but would then fault in the middle of the page due to the MTE tag. Signed-off-by:Joey Gouly <joey.gouly@arm.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Cc: Mark Brown <broonie@kernel.org> Cc: Shuah Khan <shuah@kernel.org> Reviewed-by:
Mark Brown <broonie@kernel.org> Tested-by:
Mark Brown <broonie@kernel.org> Reviewed-by:
Shuah Khan <skhan@linuxfoundation.org> Reviewed-by:
Catalin Marinas <catalin.marinas@arm.com> Link: https://lore.kernel.org/r/20220209152240.52788-2-joey.gouly@arm.comSigned-off-by:
Will Deacon <will@kernel.org>
Showing
Please register or sign in to comment