On Thu, Jun 26, 2025 at 08:31:37PM +0500, Sabyrzhan Tasbolatov wrote:
Hi Sabyrzhan,
quoted hunk ↗ jump to hunk
diff --git a/mm/kasan/generic.c b/mm/kasan/generic.c
index d54e89f8c3e..32c432df24a 100644
--- a/mm/kasan/generic.c
+++ b/mm/kasan/generic.c
@@ -36,6 +36,17 @@
#include "kasan.h"
#include "../slab.h"
+/*
+ * Initialize Generic KASAN and enable runtime checks.
+ * This should be called from arch kasan_init() once shadow memory is ready.
+ */
+void __init kasan_init_generic(void)
+{
+ static_branch_enable(&kasan_flag_enabled);
s390 crashes at this line, when the whole series is applied.
FWIW, it looks like kasan is called while its state is not yet finalized.
E.g. whether calling __asan_report_store4_noabort() before kasan_init_generic()
is expected?
32e0a54: c0 e5 fe a9 70 56 brasl %r14,80eb00 <__asan_report_store4_noabort>
32e0a5a: c4 28 ff cb bb a3 lgrl %r2,2c581a0 <_GLOBAL_OFFSET_TABLE_+0x70c0>
sort_extable(__start_amode31_ex_table, __stop_amode31_ex_table);
32e0a60: a5 ac 00 1c llihh %r10,28
init_task.kasan_depth = 0;
32e0a64: e3 40 2b c8 01 71 lay %r4,7112(%r2)
32e0a6a: e5 4c 40 00 00 00 mvhi 0(%r4),0
kasan_init_generic();
32e0a70: c0 e5 00 01 e7 3c brasl %r14,331d8e8 <kasan_init_generic>
+ pr_info("KernelAddressSanitizer initialized (generic)\n");
+}
Thanks!