On Wed, Nov 15, 2023 at 9:34 PM Ilya Leoshkevich <iii@xxxxxxxxxxxxx> wrote: > > The value assigned to prot is immediately overwritten on the next line > with PAGE_KERNEL. The right hand side of the assignment has no > side-effects. > > Fixes: b073d7f8aee4 ("mm: kmsan: maintain KMSAN metadata for page operations") > Suggested-by: Alexander Gordeev <agordeev@xxxxxxxxxxxxx> > Signed-off-by: Ilya Leoshkevich <iii@xxxxxxxxxxxxx> Reviewed-by: Alexander Potapenko <glider@xxxxxxxxxx> > --- > mm/kmsan/shadow.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/mm/kmsan/shadow.c b/mm/kmsan/shadow.c > index b9d05aff313e..2d57408c78ae 100644 > --- a/mm/kmsan/shadow.c > +++ b/mm/kmsan/shadow.c > @@ -243,7 +243,6 @@ int kmsan_vmap_pages_range_noflush(unsigned long start, unsigned long end, > s_pages[i] = shadow_page_for(pages[i]); > o_pages[i] = origin_page_for(pages[i]); > } > - prot = __pgprot(pgprot_val(prot) | _PAGE_NX); > prot = PAGE_KERNEL; This bug dates back to 5.1-rc2, when KMSAN didn't exist upstream. The commit introducing vmap support already had it: https://github.com/google/kmsan/commit/3ff9d7c640d378485286e1a99d85984ae6901f23 I don't remember what exactly required the more relaxed PAGE_KERNEL mask though :)