On Mon, Aug 19, 2024 at 08:15:11AM -0700, Suren Baghdasaryan wrote: > @@ -91,7 +97,7 @@ > #endif > > #if ZONES_WIDTH + LRU_GEN_WIDTH + SECTIONS_WIDTH + NODES_WIDTH + \ > - KASAN_TAG_WIDTH + LAST_CPUPID_SHIFT <= BITS_PER_LONG - NR_PAGEFLAGS > + KASAN_TAG_WIDTH + ALLOC_TAG_REF_WIDTH + LAST_CPUPID_SHIFT <= BITS_PER_LONG - NR_PAGEFLAGS > #define LAST_CPUPID_WIDTH LAST_CPUPID_SHIFT > #else > #define LAST_CPUPID_WIDTH 0 So if ALLOC_TAG_REF_WIDTH is big enough, it's going to force last_cpupid into struct page. That will misalign struct page and disable HVO -- with no warning!