mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-13 14:50:17 +00:00
f42373f911
We can't relocate entries in dynamic section if it is readonly:
1. Add a l_ld_readonly field to struct link_map to indicate if dynamic
section is readonly and set it based on p_flags of PT_DYNAMIC segment.
2. Replace DL_RO_DYN_SECTION with dl_relocate_ld to decide if dynamic
section should be relocated.
3. Remove DL_RO_DYN_TEMP_CNT.
4. Don't use a static dynamic section to make readonly dynamic section
in vDSO writable.
5. Remove the temp argument from elf_get_dynamic_info.
This fixes BZ #28340.
Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
(cherry picked from commit b413280cfb
)
17 lines
297 B
Plaintext
17 lines
297 B
Plaintext
SECTIONS
|
|
{
|
|
. = SIZEOF_HEADERS;
|
|
.dynamic : { *(.dynamic) } :text :dynamic
|
|
.rodata : { *(.data*) *(.bss*) } :text
|
|
/DISCARD/ : {
|
|
*(.note.gnu.property)
|
|
}
|
|
.note : { *(.note.*) } :text :note
|
|
}
|
|
PHDRS
|
|
{
|
|
text PT_LOAD FLAGS(5) FILEHDR PHDRS;
|
|
dynamic PT_DYNAMIC FLAGS(4);
|
|
note PT_NOTE FLAGS(4);
|
|
}
|