Re: [PATCH] elf: Hide DT_INIT and DT_FINI functions

Project / Subsystem

binutils / binutils

Date

2026-09-15

Proposer

Alan Modra <amodra@gmail.com>

Source type

public_inbox

Consensus

Proposed

Sentiment

—/10

Technical tradeoffs

  • • Hiding linker-internal symbols vs. providing source-level control for initialization/termination functions.
  • • Potential impact on dynamic linking behavior and runtime initialization/cleanup compared to the complexity of linker-level hiding.

All attributes

project
binutils
subsystem
binutils
patch_id
—
discussion_id
aqim7jougG6iio7x@squeak.grove.modra.org
source_type
public_inbox
title
Re: [PATCH] elf: Hide DT_INIT and DT_FINI functions
headline
Reverted patch to hide DT_INIT and DT_FINI functions
tldr
Patch to hide DT_INIT/DT_FINI functions in ELF reverted due to negative community feedback.
proposer
Alan Modra <amodra@gmail.com>
consensus
Proposed
outcome
needs_revision
sentiment_score
—
technical_tradeoffs
  • • Hiding linker-internal symbols vs. providing source-level control for initialization/termination functions.
  • • Potential impact on dynamic linking behavior and runtime initialization/cleanup compared to the complexity of linker-level hiding.
series_id
—
series_role
standalone
series_parts
[]
tags
  • • binutils
  • • elf
  • • linker
  • • abi
  • • reverted
bugzilla_url
—
date
2026-09-15T00:00:00.000Z

Re: [PATCH] elf: Hide DT_INIT and DT_FINI functions

Alan Modra has reverted a patch that aimed to hide DT_INIT and DT_FINI functions in ELF objects. The decision was made because the majority opinion was that ld hiding these functions is surprising, they can be hidden at the source level, and the impact of them not being hidden is small. There might even be reasons to keep them exported. The patch also introduced regressions that required further fixes.