On Tue, Mar 08, 2022 at 04:30:46PM +0100, Andrey Konovalov wrote: > On Tue, Mar 8, 2022 at 4:17 PM Vasily Gorbik <gor@xxxxxxxxxxxxx> wrote: > > > > On Mon, Jan 24, 2022 at 07:05:05PM +0100, andrey.konovalov@xxxxxxxxx wrote: > > > From: Andrey Konovalov <andreyknvl@xxxxxxxxxx> > > > > > > The kernel can use to allocate executable memory. The only supported way > > > to do that is via __vmalloc_node_range() with the executable bit set in > > > the prot argument. (vmap() resets the bit via pgprot_nx()). > > > > > > Once tag-based KASAN modes start tagging vmalloc allocations, executing > > > code from such allocations will lead to the PC register getting a tag, > > > which is not tolerated by the kernel. > > > > > > Only tag the allocations for normal kernel pages. > > > > > > Signed-off-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx> > > > > This breaks s390 and produce huge amount of false positives. > > I haven't been testing linux-next with KASAN for while, now tried it with > > next-20220308 and bisected false positives to this commit. > > > > Any idea what is going wrong here? > > Could you try the attached fix? Wow, that was quick! Yes, it fixes the issue for s390, kasan tests pass as well. Thank you!