alloc_tag: remove empty module tag section
authorCasey Chen <cachen@purestorage.com>
Tue, 10 Jun 2025 16:22:58 +0000 (10:22 -0600)
committerAndrew Morton <akpm@linux-foundation.org>
Thu, 10 Jul 2025 05:42:03 +0000 (22:42 -0700)
commit7e43195c609f0499e46c6bfa9472e39c76af445b
treea9ec9d1088d2fa1826db995d7c44445e58b09606
parent38b0ece6d76374b989928021b5d310be11b99b5c
alloc_tag: remove empty module tag section

The empty MOD_CODETAG_SECTIONS() macro added an incomplete .data section
in module linker script, which caused symbol lookup tools like gdb to
misinterpret symbol addresses e.g., __ib_process_cq incorrectly mapping to
unrelated functions like below.

  (gdb) disas __ib_process_cq
  Dump of assembler code for function trace_event_fields_cq_schedule:

Removing the empty section restores proper symbol resolution and layout,
ensuring .data placement behaves as expected.

Link: https://lkml.kernel.org/r/20250610162258.324645-1-cachen@purestorage.com
Fixes: 0db6f8d7820a ("alloc_tag: load module tags into separate contiguous memory")
       22d407b164ff ("lib: add allocation tagging support for memory allocation profiling")
Signed-off-by: Casey Chen <cachen@purestorage.com>
Reviewed-by: Yuanyuan Zhong <yzhong@purestorage.com>
Acked-by: Suren Baghdasaryan <surenb@google.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Kent Overstreet <kent.overstreet@linux.dev>
Cc: Luis Chamberalin <mcgrof@kernel.org>
Cc: Pasha Tatashin <pasha.tatashin@soleen.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/asm-generic/codetag.lds.h
scripts/module.lds.S