This series starts with a fix to a section misalignement on i386, and follows with cleanups and refactoring for reuse.
When CONFIG_DRM_USE_DYNAMIC_DEBUG=Y (currently marked BROKEN) and CONFIG_DRM=y, the __dyndbg_classes section gets a single struct/record. On i386 this is 28-bytes, breaking the required ALIGN(8) on the following __dyndbg section. This breaks dynamic_debug_init() with a NULL pointer dereference; the section traversal logic encounters padding bytes instead of a valid descriptor. the series: 1. refactors BOUNDED_SECTION_* macros for later reuse v2- adds note that macros are for vmlinux.lds.h only, not for modules. 2. drops unused HEADERED_SECTION_* macros 3. fixes ALIGN(8) omission causing NULL ptr on i386 adds,uses BOUNDED_SECTION _ALIGNED variants 4. removes now redundant ALIGN(8)s in vmlinux.lds.h 5. adds dyndbg.lds.S to KEEP sections in modules follows codetag.lds.h model v3: move #includes to top of files, drop redundant ALIGN(8) in dydnbg.lds.S: DYNDBG_SECTIONS macro add Reviewed-by tag (thx Petr) v2: - avoids BOUNDED_SECTION in modules. Since ELF sections have well defined bounaries, _start & _end symbols are useless, and empty sections are unhelpful, possibly confusing to tools. - sets 0 address to the sections, not just whatever current is. Signed-off-by: Jim Cromie <[email protected]> --- Changes in v3: - EDITME: describe what is new in this series revision. - EDITME: use bulletpoints and terse descriptions. - Link to v2: https://lore.kernel.org/r/[email protected] Changes in v2: - EDITME: describe what is new in this series revision. - EDITME: use bulletpoints and terse descriptions. - Link to v1: https://lore.kernel.org/r/[email protected] --- Jim Cromie (5): vmlinux.lds.h: refactor BOUNDED_SECTION_* macros into bounded_sections.lds.h vmlinux.lds.h: drop unused HEADERED_SECTION* macros vmlinux.lds.h: Fix ALIGN(8) omission causing NULL ptr on i386 vmlinux.lds.h: remove redundant ALIGN(8) directives dyndbg.lds.S: fix lost dyndbg sections in modules MAINTAINERS | 1 + include/asm-generic/bounded_sections.lds.h | 32 ++++++++++++++++ include/asm-generic/dyndbg.lds.h | 18 +++++++++ include/asm-generic/vmlinux.lds.h | 59 ++++-------------------------- scripts/module.lds.S | 2 + 5 files changed, 61 insertions(+), 51 deletions(-) --- base-commit: 5d6919055dec134de3c40167a490f33c74c12581 change-id: 20260502-asm-generic-1-32c842a35dd0 Best regards, -- Jim Cromie <[email protected]>

