Add the RHEL 211.21.1..211.22.1 backports (1288-1351) from centos-stream-10 and upstream stable, on top of 211.20.1. Bump pkgrelease and specrelease to 211.22.1. (The redhat/ automotive rebuild-changelog tooling change is omitted: it patches redhat/scripts not present in this build base and does not affect the kernel.)
119 lines
3.7 KiB
Diff
119 lines
3.7 KiB
Diff
From b0006591a4fb4d08bab55e02d904a225bb97f803 Mon Sep 17 00:00:00 2001
|
|
From: Jerome Marchand <jmarchan@redhat.com>
|
|
Date: Mon, 1 Jun 2026 15:22:06 +0200
|
|
Subject: [PATCH] scripts/sorttable: Remove unneeded Elf_Rel
|
|
|
|
JIRA: https://redhat.atlassian.net/browse/RHEL-180193
|
|
|
|
commit 6f2c2f93a190467cebd6ebd03feb49514fead5ca
|
|
Author: Steven Rostedt <rostedt@goodmis.org>
|
|
Date: Sun Jan 5 11:22:14 2025 -0500
|
|
|
|
scripts/sorttable: Remove unneeded Elf_Rel
|
|
|
|
The code had references to initialize the Elf_Rel relocation tables, but
|
|
it was never used. Remove it.
|
|
|
|
Cc: bpf <bpf@vger.kernel.org>
|
|
Cc: Masami Hiramatsu <mhiramat@kernel.org>
|
|
Cc: Mark Rutland <mark.rutland@arm.com>
|
|
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
|
|
Cc: Andrew Morton <akpm@linux-foundation.org>
|
|
Cc: Peter Zijlstra <peterz@infradead.org>
|
|
Cc: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Cc: Masahiro Yamada <masahiroy@kernel.org>
|
|
Cc: Nathan Chancellor <nathan@kernel.org>
|
|
Cc: Nicolas Schier <nicolas@fjasle.eu>
|
|
Cc: Zheng Yejian <zhengyejian1@huawei.com>
|
|
Cc: Martin Kelly <martin.kelly@crowdstrike.com>
|
|
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
|
|
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
|
|
Link: https://lore.kernel.org/20250105162344.515342233@goodmis.org
|
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
|
|
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
|
|
|
diff --git a/scripts/sorttable.h b/scripts/sorttable.h
|
|
index 14d0c4d843e8..18d07fdb2716 100644
|
|
--- a/scripts/sorttable.h
|
|
+++ b/scripts/sorttable.h
|
|
@@ -26,7 +26,6 @@
|
|
#undef Elf_Addr
|
|
#undef Elf_Ehdr
|
|
#undef Elf_Shdr
|
|
-#undef Elf_Rel
|
|
#undef Elf_Sym
|
|
#undef ELF_ST_TYPE
|
|
#undef uint_t
|
|
@@ -42,7 +41,6 @@
|
|
# define Elf_Addr Elf64_Addr
|
|
# define Elf_Ehdr Elf64_Ehdr
|
|
# define Elf_Shdr Elf64_Shdr
|
|
-# define Elf_Rel Elf64_Rel
|
|
# define Elf_Sym Elf64_Sym
|
|
# define ELF_ST_TYPE ELF64_ST_TYPE
|
|
# define uint_t uint64_t
|
|
@@ -57,7 +55,6 @@
|
|
# define Elf_Addr Elf32_Addr
|
|
# define Elf_Ehdr Elf32_Ehdr
|
|
# define Elf_Shdr Elf32_Shdr
|
|
-# define Elf_Rel Elf32_Rel
|
|
# define Elf_Sym Elf32_Sym
|
|
# define ELF_ST_TYPE ELF32_ST_TYPE
|
|
# define uint_t uint32_t
|
|
@@ -248,14 +245,10 @@ static int do_sort(Elf_Ehdr *ehdr,
|
|
Elf32_Word *symtab_shndx = NULL;
|
|
Elf_Sym *sort_needed_sym = NULL;
|
|
Elf_Shdr *sort_needed_sec;
|
|
- Elf_Rel *relocs = NULL;
|
|
- int relocs_size = 0;
|
|
uint32_t *sort_needed_loc;
|
|
const char *secstrings;
|
|
const char *strtab;
|
|
char *extab_image;
|
|
- int extab_index = 0;
|
|
- int i;
|
|
int idx;
|
|
unsigned int shnum;
|
|
unsigned int shstrndx;
|
|
@@ -279,23 +272,15 @@ static int do_sort(Elf_Ehdr *ehdr,
|
|
if (shnum == SHN_UNDEF)
|
|
shnum = _r(&shdr[0].sh_size);
|
|
|
|
- for (i = 0, s = shdr; s < shdr + shnum; i++, s++) {
|
|
+ for (s = shdr; s < shdr + shnum; s++) {
|
|
idx = r(&s->sh_name);
|
|
- if (!strcmp(secstrings + idx, "__ex_table")) {
|
|
+ if (!strcmp(secstrings + idx, "__ex_table"))
|
|
extab_sec = s;
|
|
- extab_index = i;
|
|
- }
|
|
if (!strcmp(secstrings + idx, ".symtab"))
|
|
symtab_sec = s;
|
|
if (!strcmp(secstrings + idx, ".strtab"))
|
|
strtab_sec = s;
|
|
|
|
- if ((r(&s->sh_type) == SHT_REL ||
|
|
- r(&s->sh_type) == SHT_RELA) &&
|
|
- r(&s->sh_info) == extab_index) {
|
|
- relocs = (void *)ehdr + _r(&s->sh_offset);
|
|
- relocs_size = _r(&s->sh_size);
|
|
- }
|
|
if (r(&s->sh_type) == SHT_SYMTAB_SHNDX)
|
|
symtab_shndx = (Elf32_Word *)((const char *)ehdr +
|
|
_r(&s->sh_offset));
|
|
@@ -397,10 +382,6 @@ static int do_sort(Elf_Ehdr *ehdr,
|
|
extable_ent_size, compare_extable);
|
|
}
|
|
|
|
- /* If there were relocations, we no longer need them. */
|
|
- if (relocs)
|
|
- memset(relocs, 0, relocs_size);
|
|
-
|
|
/* find the flag main_extable_sort_needed */
|
|
for (sym = (void *)ehdr + _r(&symtab_sec->sh_offset);
|
|
sym < sym + _r(&symtab_sec->sh_size) / sizeof(Elf_Sym);
|
|
--
|
|
2.50.1 (Apple Git-155)
|
|
|