> I missed that Alexander already landed patches that reduce header size > to 16 bytes. > It is not OK to increase them again. Please leave state as bitfield > and update it with CAS (if we introduce helper functions for state > manipulation, they will hide the CAS loop, which is nice). > Available CAS primitives/compiler do not support CAS with bitfield. I propose to change kasan_alloc_meta to: struct kasan_alloc_meta { struct kasan_track track; u16 size_delta; /* object_size - alloc size */ u8 state; /* enum kasan_state */ u8 reserved1; u32 reserved2; } This shrinks _used_ meta object by 1 byte wrt the original. (btw, patch v1 does not increase overall alloc meta object size). "Alloc size", where needed, is easily calculated as a delta from cache->object_size. Kuthonuzo ��.n������g����a����&ޖ)���)��h���&������梷�����Ǟ�m������)������^�����������v���O��zf������