• Suren Baghdasaryan's avatar
    codetag: debug: skip objext checking when it's for objext itself · 239d6c96
    Suren Baghdasaryan authored
    objext objects are created with __GFP_NO_OBJ_EXT flag and therefore have
    no corresponding objext themselves (otherwise we would get an infinite
    recursion). When freeing these objects their codetag will be empty and
    when CONFIG_MEM_ALLOC_PROFILING_DEBUG is enabled this will lead to false
    warnings. Introduce CODETAG_EMPTY special codetag value to mark
    allocations which intentionally lack codetag to avoid these warnings.
    Set objext codetags to CODETAG_EMPTY before freeing to indicate that
    the codetag is expected to be empty.
    
    Link: https://lkml.kernel.org/r/20240321163705.3067592-34-surenb@google.comSigned-off-by: default avatarSuren Baghdasaryan <surenb@google.com>
    Tested-by: default avatarKees Cook <keescook@chromium.org>
    Cc: Alexander Viro <viro@zeniv.linux.org.uk>
    Cc: Alex Gaynor <alex.gaynor@gmail.com>
    Cc: Alice Ryhl <aliceryhl@google.com>
    Cc: Andreas Hindborg <a.hindborg@samsung.com>
    Cc: Benno Lossin <benno.lossin@proton.me>
    Cc: "Björn Roy Baron" <bjorn3_gh@protonmail.com>
    Cc: Boqun Feng <boqun.feng@gmail.com>
    Cc: Christoph Lameter <cl@linux.com>
    Cc: Dennis Zhou <dennis@kernel.org>
    Cc: Gary Guo <gary@garyguo.net>
    Cc: Kent Overstreet <kent.overstreet@linux.dev>
    Cc: Miguel Ojeda <ojeda@kernel.org>
    Cc: Pasha Tatashin <pasha.tatashin@soleen.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Tejun Heo <tj@kernel.org>
    Cc: Vlastimil Babka <vbabka@suse.cz>
    Cc: Wedson Almeida Filho <wedsonaf@gmail.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    239d6c96
slub.c 182 KB