diff --git a/man5/elf.5 b/man5/elf.5 index 4fa542d25..7ae721fbd 100644 --- a/man5/elf.5 +++ b/man5/elf.5 @@ -1846,11 +1846,11 @@ This is automatically populated by the linker. ELF notes allow for appending arbitrary information for the system to use. They are largely used by core files .RI ( e_type -o f +of .BR ET_CORE ), but many projects define their own set of extensions. For example, -the GNU tool chain uses ELF notes to information from +the GNU tool chain uses ELF notes to pass information from the linker to the C library. Note sections contain a series of notes (see the @@ -1893,7 +1893,12 @@ Keep in mind that the interpretation of depends on the namespace defined by the .I n_namesz field. -After, of course, having determined whether the ELF image is a core file. +If the +.I n_namesz +field is not set (e.g., is 0), then there are two sets of notes: +one for core files and one for all other ELF types. +If the namespace is unknown, then tools will usually fallback to these sets +of notes as well. .in +4n .nf @@ -1936,6 +1941,9 @@ following values: Notes used by all core files. These are highly operating system or architecture specific and often require close coordination with kernels, C libraries, and debuggers. +These are used when the namespace is the default (i.e., +.B n_namesz +will be set to 0), or a fallback when the namespace is unknown. .RS .TP 21 .PD 0 @@ -2109,11 +2117,10 @@ The desc consists of any nonzero number of bytes. The desc contains the GNU Gold linker version used. .RE .TP -.B Unknown system -The fallback set of note types when the namespace is unknown. -Usually the name field will be omitted (i.e., +.B Default/unknown namespace (e_type != ET_CORE) +These are used when the namespace is the default (i.e., .B n_namesz -will be set to 0). +will be set to 0), or a fallback when the namespace is unknown. .RS .TP 21 .PD 0