Re: [PATCH v2 1/4] kasan, arm64: Add KASAN light mode
From: Vincenzo Frascino <vincenzo.frascino@arm.com>
Date: 2021-01-14 09:39:07
Also in:
lkml
On 1/13/21 5:16 PM, Catalin Marinas wrote:
On Thu, Jan 07, 2021 at 05:29:05PM +0000, Vincenzo Frascino wrote:quoted
Architectures supported by KASAN HW can provide a light mode of execution. On an MTE enabled arm64 hw for example this can be identified with the asynch mode of execution. If an async exception occurs, the arm64 core updates a register which is asynchronously detected the next time in which the kernel is accessed.What do you mean by "the kernel is accessed"? Also, there is no "exception" as such, only a bit in a register updated asynchronously. So the last sentence could be something like: In this mode, if a tag check fault occurs, the TFSR_EL1 register is updated asynchronously. The kernel checks the corresponding bits periodically. (or you can be more precise on when the kernel checks for such faults)
Yes, I agree, I will change it accordingly. What I wrote has a similar meaning but your exposition is more clear.
quoted
KASAN requires a specific mode of execution to make use of this hw feature. Add KASAN HW light execution mode.Shall we call it "fast"? ;)quoted
--- /dev/null +++ b/include/linux/kasan_def.h@@ -0,0 +1,25 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _LINUX_KASAN_DEF_H +#define _LINUX_KASAN_DEF_H + +enum kasan_arg_mode { + KASAN_ARG_MODE_DEFAULT, + KASAN_ARG_MODE_OFF, + KASAN_ARG_MODE_LIGHT, + KASAN_ARG_MODE_PROD, + KASAN_ARG_MODE_FULL, +}; + +enum kasan_arg_stacktrace { + KASAN_ARG_STACKTRACE_DEFAULT, + KASAN_ARG_STACKTRACE_OFF, + KASAN_ARG_STACKTRACE_ON, +}; + +enum kasan_arg_fault { + KASAN_ARG_FAULT_DEFAULT, + KASAN_ARG_FAULT_REPORT, + KASAN_ARG_FAULT_PANIC, +}; + +#endif /* _LINUX_KASAN_DEF_H */I thought we agreed not to expose the KASAN internal but come up with another abstraction. Maybe this was after you posted these patches.
Yes, indeed we agreed and I am going to change it in v3. The agreement temporally came after I posted v2 hence it is not reflected here. -- Regards, Vincenzo _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel