This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RFC: Add PT_GNU_PROPERTY to cover .note.gnu.property section
On Tue, Nov 27, 2018 at 3:59 PM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> On Tue, Nov 27, 2018 at 11:25 AM H.J. Lu <hjl.tools@gmail.com> wrote:
> >
> > On Tue, Nov 27, 2018 at 9:56 AM Cary Coutant <ccoutant@gmail.com> wrote:
> > >
> > > > > > PT_GNU_PROPERTY isn't compatible with existing loaders. This needs
> > > > > > to be both forward and backward compatible.
> > > > >
> > > > > Which loaders? The kernel?
> > > >
> > > > Kernel, glibc, gdb, .....
> > >
> > > How is that any different from using PT_NOTE? Existing loaders don't
> > > handle that either.
> > >
> > > If you're claiming that a new PT_ value in the program header table
> > > will be rejected by existing loaders, that's a bug. It should be
> > > fixed. The whole principle of ELF extensibility relies on that.
> >
> > Add PT_GNU_PROPERTY to cover .note.gnu.property section?
>
> Like:
>
> 1. Add PT_GNU_PROPERTY segment type.
>
> # define PT_GNU_PROPERTY (PT_LOOS + 0x474e553)
>
> which covers .note.gnu.property section.
> 2. Remove GNU_PROPERTY_X86_UINT32_VALID.
>
Here is a patch. The updated pdf is at
https://github.com/hjl-tools/linux-abi/wiki/linux-abi-draft.pdf
--
H.J.
From 0a56a9760c69e087954aa8dfe3ce266f8dce72a4 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Wed, 28 Nov 2018 09:22:50 -0800
Subject: [PATCH] Add PT_GNU_PROPERTY to cover .note.gnu.property section
---
dl.tex | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/dl.tex b/dl.tex
index 98638fa..2e8df1a 100644
--- a/dl.tex
+++ b/dl.tex
@@ -13,6 +13,7 @@ The following \xOS program header types are defined:
\multicolumn{1}{c}{Name} & \multicolumn{1}{c}{Value} \\
\hline
\texttt{PT_GNU_EH_FRAME} & \texttt{0x6474e550} \\
+ \texttt{PT_GNU_PROPERTY} & \texttt{0x6474e553} \\
\end{tabular}
\end{center}
\Hrule
@@ -22,6 +23,9 @@ The following \xOS program header types are defined:
\item[PT_GNU_EH_FRAME]
The segment contains \texttt{.eh_frame_hdr} section. See
Section~\ref{sec_eh_frame_hdr} of this document.
+ \item[PT_GNU_PROPERTY]
+ The segment contains \texttt{.note.gnu.property} section. See
+ Section~\ref{sec_property} of this document.
\end{description}
\section{Note Section}
--
2.19.1