On Mon, 15 Mar 2021 13:20:10 +0000, Vincenzo Frascino wrote: > This patchset implements the asynchronous mode support for ARMv8.5-A > Memory Tagging Extension (MTE), which is a debugging feature that allows > to detect with the help of the architecture the C and C++ programmatic > memory errors like buffer overflow, use-after-free, use-after-return, etc. > > MTE is built on top of the AArch64 v8.0 virtual address tagging TBI > (Top Byte Ignore) feature and allows a task to set a 4 bit tag on any > subset of its address space that is multiple of a 16 bytes granule. MTE > is based on a lock-key mechanism where the lock is the tag associated to > the physical memory and the key is the tag associated to the virtual > address. > When MTE is enabled and tags are set for ranges of address space of a task, > the PE will compare the tag related to the physical memory with the tag > related to the virtual address (tag check operation). Access to the memory > is granted only if the two tags match. In case of mismatch the PE will raise > an exception. > > [...]
Applied to arm64 (for-next/mte-async-kernel-mode) but with a note that I'll drop them if Andrew prefers to take the patches via the mm tree. Thanks! [1/9] arm64: mte: Add asynchronous mode support https://git.kernel.org/arm64/c/f3b7deef8dca [2/9] kasan: Add KASAN mode kernel parameter https://git.kernel.org/arm64/c/2603f8a78dfb [3/9] arm64: mte: Drop arch_enable_tagging() https://git.kernel.org/arm64/c/c137c6145b11 [4/9] kasan: Add report for async mode https://git.kernel.org/arm64/c/8f7b5054755e [5/9] arm64: mte: Enable TCO in functions that can read beyond buffer limits https://git.kernel.org/arm64/c/e60beb95c08b [6/9] arm64: mte: Conditionally compile mte_enable_kernel_*() https://git.kernel.org/arm64/c/d8969752cc4e [7/9] arm64: mte: Enable async tag check fault https://git.kernel.org/arm64/c/65812c6921cc [8/9] arm64: mte: Report async tag faults before suspend https://git.kernel.org/arm64/c/eab0e6e17d87 [9/9] kasan, arm64: tests supports for HW_TAGS async mode https://git.kernel.org/arm64/c/e80a76aa1a91 -- Catalin