forked from pool/elfutils
Updating link to change in openSUSE:Factory/elfutils revision 101
OBS-URL: https://build.opensuse.org/package/show/Base:System/elfutils?expand=0&rev=2cc33322c8c1ed8a596ba5eed28dead7
This commit is contained in:
parent
f9063f0adf
commit
f83284710d
@ -1,210 +0,0 @@
|
|||||||
From de209d23e5f571f03ff0efc6547a2ebbfae3828e Mon Sep 17 00:00:00 2001
|
|
||||||
From: Andreas Schwab <schwab@suse.de>
|
|
||||||
Date: Mon, 8 Aug 2022 13:44:08 +0200
|
|
||||||
Subject: [PATCH] libelf: Sync elf.h from glibc
|
|
||||||
|
|
||||||
Adds PT_RISCV_ATTRIBUTES, SHT_RISCV_ATTRIBUTES, PT_AARCH64_MEMTAG_MTE,
|
|
||||||
RELR definitions, LoongArch relocations.
|
|
||||||
|
|
||||||
dwelf_elf_e_machine_string was updated to handle EM_LOONGARCH, and
|
|
||||||
ebl_dynamic_tag_name was updated to handle the new RELR dynamic tags.
|
|
||||||
|
|
||||||
Signed-off-by: Andreas Schwab <schwab@suse.de>
|
|
||||||
---
|
|
||||||
libdwelf/ChangeLog | 5 ++
|
|
||||||
libdwelf/dwelf_elf_e_machine_string.c | 2 +
|
|
||||||
libebl/ChangeLog | 5 ++
|
|
||||||
libebl/ebldynamictagname.c | 2 +-
|
|
||||||
libelf/ChangeLog | 4 ++
|
|
||||||
libelf/elf.h | 99 ++++++++++++++++++++++++++-
|
|
||||||
6 files changed, 113 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/libdwelf/dwelf_elf_e_machine_string.c b/libdwelf/dwelf_elf_e_machine_string.c
|
|
||||||
index 051c70b5..6d588ea8 100644
|
|
||||||
--- a/libdwelf/dwelf_elf_e_machine_string.c
|
|
||||||
+++ b/libdwelf/dwelf_elf_e_machine_string.c
|
|
||||||
@@ -398,6 +398,8 @@ dwelf_elf_e_machine_string (int machine)
|
|
||||||
return "BPF";
|
|
||||||
case EM_CSKY:
|
|
||||||
return "C-SKY";
|
|
||||||
+ case EM_LOONGARCH:
|
|
||||||
+ return "LoongArch";
|
|
||||||
|
|
||||||
case EM_ALPHA:
|
|
||||||
return "Alpha";
|
|
||||||
diff --git a/libebl/ebldynamictagname.c b/libebl/ebldynamictagname.c
|
|
||||||
index 3f8d8ee4..5d4a3a58 100644
|
|
||||||
--- a/libebl/ebldynamictagname.c
|
|
||||||
+++ b/libebl/ebldynamictagname.c
|
|
||||||
@@ -54,7 +54,7 @@ ebl_dynamic_tag_name (Ebl *ebl, int64_t tag, char *buf, size_t len)
|
|
||||||
"RELENT", "PLTREL", "DEBUG", "TEXTREL", "JMPREL", "BIND_NOW",
|
|
||||||
"INIT_ARRAY", "FINI_ARRAY", "INIT_ARRAYSZ", "FINI_ARRAYSZ",
|
|
||||||
"RUNPATH", "FLAGS", "ENCODING", "PREINIT_ARRAY",
|
|
||||||
- "PREINIT_ARRAYSZ", "SYMTAB_SHNDX"
|
|
||||||
+ "PREINIT_ARRAYSZ", "SYMTAB_SHNDX", "RELRSZ", "RELR", "RELRENT"
|
|
||||||
};
|
|
||||||
eu_static_assert (sizeof (stdtags) / sizeof (const char *) == DT_NUM);
|
|
||||||
|
|
||||||
diff --git a/libelf/elf.h b/libelf/elf.h
|
|
||||||
index 0735f6b5..02a1b3f5 100644
|
|
||||||
--- a/libelf/elf.h
|
|
||||||
+++ b/libelf/elf.h
|
|
||||||
@@ -358,8 +358,9 @@ typedef struct
|
|
||||||
|
|
||||||
#define EM_BPF 247 /* Linux BPF -- in-kernel virtual machine */
|
|
||||||
#define EM_CSKY 252 /* C-SKY */
|
|
||||||
+#define EM_LOONGARCH 258 /* LoongArch */
|
|
||||||
|
|
||||||
-#define EM_NUM 253
|
|
||||||
+#define EM_NUM 259
|
|
||||||
|
|
||||||
/* Old spellings/synonyms. */
|
|
||||||
|
|
||||||
@@ -443,7 +444,8 @@ typedef struct
|
|
||||||
#define SHT_PREINIT_ARRAY 16 /* Array of pre-constructors */
|
|
||||||
#define SHT_GROUP 17 /* Section group */
|
|
||||||
#define SHT_SYMTAB_SHNDX 18 /* Extended section indices */
|
|
||||||
-#define SHT_NUM 19 /* Number of defined types. */
|
|
||||||
+#define SHT_RELR 19 /* RELR relative relocations */
|
|
||||||
+#define SHT_NUM 20 /* Number of defined types. */
|
|
||||||
#define SHT_LOOS 0x60000000 /* Start OS-specific. */
|
|
||||||
#define SHT_GNU_ATTRIBUTES 0x6ffffff5 /* Object attributes. */
|
|
||||||
#define SHT_GNU_HASH 0x6ffffff6 /* GNU-style hash table. */
|
|
||||||
@@ -662,6 +664,11 @@ typedef struct
|
|
||||||
Elf64_Sxword r_addend; /* Addend */
|
|
||||||
} Elf64_Rela;
|
|
||||||
|
|
||||||
+/* RELR relocation table entry */
|
|
||||||
+
|
|
||||||
+typedef Elf32_Word Elf32_Relr;
|
|
||||||
+typedef Elf64_Xword Elf64_Relr;
|
|
||||||
+
|
|
||||||
/* How to extract and insert information held in the r_info field. */
|
|
||||||
|
|
||||||
#define ELF32_R_SYM(val) ((val) >> 8)
|
|
||||||
@@ -887,7 +894,10 @@ typedef struct
|
|
||||||
#define DT_PREINIT_ARRAY 32 /* Array with addresses of preinit fct*/
|
|
||||||
#define DT_PREINIT_ARRAYSZ 33 /* size in bytes of DT_PREINIT_ARRAY */
|
|
||||||
#define DT_SYMTAB_SHNDX 34 /* Address of SYMTAB_SHNDX section */
|
|
||||||
-#define DT_NUM 35 /* Number used */
|
|
||||||
+#define DT_RELRSZ 35 /* Total size of RELR relative relocations */
|
|
||||||
+#define DT_RELR 36 /* Address of RELR relative relocations */
|
|
||||||
+#define DT_RELRENT 37 /* Size of one RELR relative relocaction */
|
|
||||||
+#define DT_NUM 38 /* Number used */
|
|
||||||
#define DT_LOOS 0x6000000d /* Start of OS-specific */
|
|
||||||
#define DT_HIOS 0x6ffff000 /* End of OS-specific */
|
|
||||||
#define DT_LOPROC 0x70000000 /* Start of processor-specific */
|
|
||||||
@@ -2893,6 +2903,9 @@ enum
|
|
||||||
#define R_AARCH64_TLSDESC 1031 /* TLS Descriptor. */
|
|
||||||
#define R_AARCH64_IRELATIVE 1032 /* STT_GNU_IFUNC relocation. */
|
|
||||||
|
|
||||||
+/* MTE memory tag segment type. */
|
|
||||||
+#define PT_AARCH64_MEMTAG_MTE (PT_LOPROC + 2)
|
|
||||||
+
|
|
||||||
/* AArch64 specific values for the Dyn d_tag field. */
|
|
||||||
#define DT_AARCH64_BTI_PLT (DT_LOPROC + 1)
|
|
||||||
#define DT_AARCH64_PAC_PLT (DT_LOPROC + 3)
|
|
||||||
@@ -3918,6 +3931,8 @@ enum
|
|
||||||
#define EF_RISCV_FLOAT_ABI_SINGLE 0x0002
|
|
||||||
#define EF_RISCV_FLOAT_ABI_DOUBLE 0x0004
|
|
||||||
#define EF_RISCV_FLOAT_ABI_QUAD 0x0006
|
|
||||||
+#define EF_RISCV_RVE 0x0008
|
|
||||||
+#define EF_RISCV_TSO 0x0010
|
|
||||||
|
|
||||||
/* RISC-V relocations. */
|
|
||||||
#define R_RISCV_NONE 0
|
|
||||||
@@ -3978,6 +3993,19 @@ enum
|
|
||||||
|
|
||||||
#define R_RISCV_NUM 59
|
|
||||||
|
|
||||||
+/* RISC-V specific values for the st_other field. */
|
|
||||||
+#define STO_RISCV_VARIANT_CC 0x80 /* Function uses variant calling
|
|
||||||
+ convention */
|
|
||||||
+
|
|
||||||
+/* RISC-V specific values for the sh_type field. */
|
|
||||||
+#define SHT_RISCV_ATTRIBUTES (SHT_LOPROC + 3)
|
|
||||||
+
|
|
||||||
+/* RISC-V specific values for the p_type field. */
|
|
||||||
+#define PT_RISCV_ATTRIBUTES (PT_LOPROC + 3)
|
|
||||||
+
|
|
||||||
+/* RISC-V specific values for the d_tag field. */
|
|
||||||
+#define DT_RISCV_VARIANT_CC (DT_LOPROC + 1)
|
|
||||||
+
|
|
||||||
/* BPF specific declarations. */
|
|
||||||
|
|
||||||
#define R_BPF_NONE 0 /* No reloc */
|
|
||||||
@@ -4056,6 +4084,71 @@ enum
|
|
||||||
#define R_NDS32_TLS_TPOFF 102
|
|
||||||
#define R_NDS32_TLS_DESC 119
|
|
||||||
|
|
||||||
+/* LoongArch ELF Flags */
|
|
||||||
+#define EF_LARCH_ABI 0x07
|
|
||||||
+#define EF_LARCH_ABI_LP64D 0x03
|
|
||||||
+
|
|
||||||
+/* LoongArch specific dynamic relocations */
|
|
||||||
+#define R_LARCH_NONE 0
|
|
||||||
+#define R_LARCH_32 1
|
|
||||||
+#define R_LARCH_64 2
|
|
||||||
+#define R_LARCH_RELATIVE 3
|
|
||||||
+#define R_LARCH_COPY 4
|
|
||||||
+#define R_LARCH_JUMP_SLOT 5
|
|
||||||
+#define R_LARCH_TLS_DTPMOD32 6
|
|
||||||
+#define R_LARCH_TLS_DTPMOD64 7
|
|
||||||
+#define R_LARCH_TLS_DTPREL32 8
|
|
||||||
+#define R_LARCH_TLS_DTPREL64 9
|
|
||||||
+#define R_LARCH_TLS_TPREL32 10
|
|
||||||
+#define R_LARCH_TLS_TPREL64 11
|
|
||||||
+#define R_LARCH_IRELATIVE 12
|
|
||||||
+
|
|
||||||
+/* Reserved for future relocs that the dynamic linker must understand. */
|
|
||||||
+
|
|
||||||
+/* used by the static linker for relocating .text. */
|
|
||||||
+#define R_LARCH_MARK_LA 20
|
|
||||||
+#define R_LARCH_MARK_PCREL 21
|
|
||||||
+#define R_LARCH_SOP_PUSH_PCREL 22
|
|
||||||
+#define R_LARCH_SOP_PUSH_ABSOLUTE 23
|
|
||||||
+#define R_LARCH_SOP_PUSH_DUP 24
|
|
||||||
+#define R_LARCH_SOP_PUSH_GPREL 25
|
|
||||||
+#define R_LARCH_SOP_PUSH_TLS_TPREL 26
|
|
||||||
+#define R_LARCH_SOP_PUSH_TLS_GOT 27
|
|
||||||
+#define R_LARCH_SOP_PUSH_TLS_GD 28
|
|
||||||
+#define R_LARCH_SOP_PUSH_PLT_PCREL 29
|
|
||||||
+#define R_LARCH_SOP_ASSERT 30
|
|
||||||
+#define R_LARCH_SOP_NOT 31
|
|
||||||
+#define R_LARCH_SOP_SUB 32
|
|
||||||
+#define R_LARCH_SOP_SL 33
|
|
||||||
+#define R_LARCH_SOP_SR 34
|
|
||||||
+#define R_LARCH_SOP_ADD 35
|
|
||||||
+#define R_LARCH_SOP_AND 36
|
|
||||||
+#define R_LARCH_SOP_IF_ELSE 37
|
|
||||||
+#define R_LARCH_SOP_POP_32_S_10_5 38
|
|
||||||
+#define R_LARCH_SOP_POP_32_U_10_12 39
|
|
||||||
+#define R_LARCH_SOP_POP_32_S_10_12 40
|
|
||||||
+#define R_LARCH_SOP_POP_32_S_10_16 41
|
|
||||||
+#define R_LARCH_SOP_POP_32_S_10_16_S2 42
|
|
||||||
+#define R_LARCH_SOP_POP_32_S_5_20 43
|
|
||||||
+#define R_LARCH_SOP_POP_32_S_0_5_10_16_S2 44
|
|
||||||
+#define R_LARCH_SOP_POP_32_S_0_10_10_16_S2 45
|
|
||||||
+#define R_LARCH_SOP_POP_32_U 46
|
|
||||||
+
|
|
||||||
+/* used by the static linker for relocating non .text. */
|
|
||||||
+#define R_LARCH_ADD8 47
|
|
||||||
+#define R_LARCH_ADD16 48
|
|
||||||
+#define R_LARCH_ADD24 49
|
|
||||||
+#define R_LARCH_ADD32 50
|
|
||||||
+#define R_LARCH_ADD64 51
|
|
||||||
+#define R_LARCH_SUB8 52
|
|
||||||
+#define R_LARCH_SUB16 53
|
|
||||||
+#define R_LARCH_SUB24 54
|
|
||||||
+#define R_LARCH_SUB32 55
|
|
||||||
+#define R_LARCH_SUB64 56
|
|
||||||
+#define R_LARCH_GNU_VTINHERIT 57
|
|
||||||
+#define R_LARCH_GNU_VTENTRY 58
|
|
||||||
+
|
|
||||||
+
|
|
||||||
/* ARCompact/ARCv2 specific relocs. */
|
|
||||||
#define R_ARC_NONE 0x0
|
|
||||||
#define R_ARC_8 0x1
|
|
||||||
--
|
|
||||||
2.37.1
|
|
||||||
|
|
@ -1,84 +0,0 @@
|
|||||||
From adc0b8434a4bcef2baa515a252e4675dfbc264b7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Andreas Schwab <schwab@suse.de>
|
|
||||||
Date: Mon, 8 Aug 2022 11:07:19 +0200
|
|
||||||
Subject: [PATCH] backends: Handle new RISC-V specific definitions
|
|
||||||
|
|
||||||
Handle PT_RISCV_ATTRIBUTES, SHT_RISCV_ATTRIBUTES, DT_RISCV_VARIANT_CC.
|
|
||||||
|
|
||||||
Signed-off-by: Andreas Schwab <schwab@suse.de>
|
|
||||||
---
|
|
||||||
backends/riscv_init.c | 4 ++++
|
|
||||||
backends/riscv_symbol.c | 45 +++++++++++++++++++++++++++++++++++++++++
|
|
||||||
2 files changed, 49 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/backends/riscv_init.c b/backends/riscv_init.c
|
|
||||||
index 141e0821..f2d46082 100644
|
|
||||||
--- a/backends/riscv_init.c
|
|
||||||
+++ b/backends/riscv_init.c
|
|
||||||
@@ -65,6 +65,10 @@ riscv_init (Elf *elf,
|
|
||||||
HOOK (eh, check_special_symbol);
|
|
||||||
HOOK (eh, machine_flag_check);
|
|
||||||
HOOK (eh, set_initial_registers_tid);
|
|
||||||
+ HOOK (eh, segment_type_name);
|
|
||||||
+ HOOK (eh, section_type_name);
|
|
||||||
+ HOOK (eh, dynamic_tag_name);
|
|
||||||
+ HOOK (eh, dynamic_tag_check);
|
|
||||||
if (eh->class == ELFCLASS64)
|
|
||||||
eh->core_note = riscv64_core_note;
|
|
||||||
else
|
|
||||||
diff --git a/backends/riscv_symbol.c b/backends/riscv_symbol.c
|
|
||||||
index c34b7702..c149b8ba 100644
|
|
||||||
--- a/backends/riscv_symbol.c
|
|
||||||
+++ b/backends/riscv_symbol.c
|
|
||||||
@@ -119,3 +119,48 @@ riscv_check_special_symbol (Elf *elf, const GElf_Sym *sym,
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+const char *
|
|
||||||
+riscv_segment_type_name (int segment, char *buf __attribute__ ((unused)),
|
|
||||||
+ size_t len __attribute__ ((unused)))
|
|
||||||
+{
|
|
||||||
+ switch (segment)
|
|
||||||
+ {
|
|
||||||
+ case PT_RISCV_ATTRIBUTES:
|
|
||||||
+ return "RISCV_ATTRIBUTES";
|
|
||||||
+ }
|
|
||||||
+ return NULL;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+/* Return symbolic representation of section type. */
|
|
||||||
+const char *
|
|
||||||
+riscv_section_type_name (int type,
|
|
||||||
+ char *buf __attribute__ ((unused)),
|
|
||||||
+ size_t len __attribute__ ((unused)))
|
|
||||||
+{
|
|
||||||
+ switch (type)
|
|
||||||
+ {
|
|
||||||
+ case SHT_RISCV_ATTRIBUTES:
|
|
||||||
+ return "RISCV_ATTRIBUTES";
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ return NULL;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+const char *
|
|
||||||
+riscv_dynamic_tag_name (int64_t tag, char *buf __attribute__ ((unused)),
|
|
||||||
+ size_t len __attribute__ ((unused)))
|
|
||||||
+{
|
|
||||||
+ switch (tag)
|
|
||||||
+ {
|
|
||||||
+ case DT_RISCV_VARIANT_CC:
|
|
||||||
+ return "RISCV_VARIANT_CC";
|
|
||||||
+ }
|
|
||||||
+ return NULL;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+bool
|
|
||||||
+riscv_dynamic_tag_check (int64_t tag)
|
|
||||||
+{
|
|
||||||
+ return tag == DT_RISCV_VARIANT_CC;
|
|
||||||
+}
|
|
||||||
--
|
|
||||||
2.37.1
|
|
||||||
|
|
@ -1,32 +0,0 @@
|
|||||||
From 1a7a4774f1e60d10e956fbc7d376f4e7222e2abb Mon Sep 17 00:00:00 2001
|
|
||||||
From: Andreas Schwab <schwab@suse.de>
|
|
||||||
Date: Mon, 8 Aug 2022 13:13:16 +0200
|
|
||||||
Subject: [PATCH] elflint: Allow zero p_memsz for PT_RISCV_ATTRIBUTES
|
|
||||||
|
|
||||||
The RISCV_ATTRIBUTES segment is not meant to be loaded.
|
|
||||||
|
|
||||||
Signed-off-by: Andreas Schwab <schwab@suse.de>
|
|
||||||
---
|
|
||||||
src/ChangeLog | 5 +++++
|
|
||||||
src/elflint.c | 5 ++++-
|
|
||||||
2 files changed, 9 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/src/elflint.c b/src/elflint.c
|
|
||||||
index d919936f..b0e5415e 100644
|
|
||||||
--- a/src/elflint.c
|
|
||||||
+++ b/src/elflint.c
|
|
||||||
@@ -4731,7 +4731,10 @@ section [%2zu] '%s' must not be executable\n"),
|
|
||||||
}
|
|
||||||
|
|
||||||
if (phdr->p_filesz > phdr->p_memsz
|
|
||||||
- && (phdr->p_memsz != 0 || phdr->p_type != PT_NOTE))
|
|
||||||
+ && (phdr->p_memsz != 0
|
|
||||||
+ || (phdr->p_type != PT_NOTE
|
|
||||||
+ && !(ehdr->e_machine == EM_RISCV
|
|
||||||
+ && phdr->p_type == PT_RISCV_ATTRIBUTES))))
|
|
||||||
ERROR (_("\
|
|
||||||
program header entry %d: file size greater than memory size\n"),
|
|
||||||
cnt);
|
|
||||||
--
|
|
||||||
2.37.1
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
|||||||
From e447ecbbffb1d3f9d776b94392e76e37a1b5fd19 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Andreas Schwab <schwab@suse.de>
|
|
||||||
Date: Mon, 8 Aug 2022 11:11:04 +0200
|
|
||||||
Subject: [PATCH] readelf: Handle SHT_RISCV_ATTRIBUTES like SHT_GNU_ATTRIBUTES
|
|
||||||
|
|
||||||
Signed-off-by: Andreas Schwab <schwab@suse.de>
|
|
||||||
---
|
|
||||||
src/readelf.c | 2 ++
|
|
||||||
1 file changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/readelf.c b/src/readelf.c
|
|
||||||
index f1f77ce8..e8317f98 100644
|
|
||||||
--- a/src/readelf.c
|
|
||||||
+++ b/src/readelf.c
|
|
||||||
@@ -3671,6 +3671,8 @@ print_attributes (Ebl *ebl, const GElf_Ehdr *ehdr)
|
|
||||||
if (shdr == NULL || (shdr->sh_type != SHT_GNU_ATTRIBUTES
|
|
||||||
&& (shdr->sh_type != SHT_ARM_ATTRIBUTES
|
|
||||||
|| ehdr->e_machine != EM_ARM)
|
|
||||||
+ && (shdr->sh_type != SHT_RISCV_ATTRIBUTES
|
|
||||||
+ || ehdr->e_machine != EM_RISCV)
|
|
||||||
&& (shdr->sh_type != SHT_CSKY_ATTRIBUTES
|
|
||||||
|| ehdr->e_machine != EM_CSKY)))
|
|
||||||
continue;
|
|
||||||
--
|
|
||||||
2.37.1
|
|
||||||
|
|
@ -1,50 +0,0 @@
|
|||||||
From 31d6b1fe74ab89138b4d256742997b730dc5cba8 Mon Sep 17 00:00:00 2001
|
|
||||||
From: "Frank Ch. Eigler" <fche@redhat.com>
|
|
||||||
Date: Mon, 15 Aug 2022 06:20:10 -0400
|
|
||||||
Subject: [PATCH] PR29474: debuginfod
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
Previous code sometimes confused debuginfod with concurrent queries
|
|
||||||
targeting the same RPM. One thread fetching & prefetching, the other
|
|
||||||
thread misinterpreted the sudden presence of its target file in the
|
|
||||||
fdcache as a mere unnecessary prefetch duplicate. But if it was the
|
|
||||||
other thread's target file, previous code would -skip- it completely,
|
|
||||||
resulting in a 404 error. New code allows the other thread to also
|
|
||||||
decompress the target file and return it, and still continue to its
|
|
||||||
own prefetching process for other files.
|
|
||||||
|
|
||||||
There's a performance trade-off here. Another option would be for the
|
|
||||||
other thread to check the fdcache regularly and abort its own
|
|
||||||
prefetch/fetch/prefetch loop early in case of a sudden target file
|
|
||||||
hit. That'd save CPU probably but it'd stop prefetching of later
|
|
||||||
segments of the input archive, which could save future time.
|
|
||||||
|
|
||||||
Automated testing is too time/load sensitive to attempt. Confirmed
|
|
||||||
working with Martin's stress tester.
|
|
||||||
|
|
||||||
Reported-By: Martin Liška <mliska@suse.cz>
|
|
||||||
Signed-Off-By: Frank Ch. Eigler <fche@redhat.com>
|
|
||||||
---
|
|
||||||
debuginfod/ChangeLog | 6 ++++++
|
|
||||||
debuginfod/debuginfod.cxx | 3 ++-
|
|
||||||
2 files changed, 8 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/debuginfod/debuginfod.cxx b/debuginfod/debuginfod.cxx
|
|
||||||
index a089d0bd..9245be53 100644
|
|
||||||
--- a/debuginfod/debuginfod.cxx
|
|
||||||
+++ b/debuginfod/debuginfod.cxx
|
|
||||||
@@ -1742,7 +1742,8 @@ handle_buildid_r_match (bool internal_req_p,
|
|
||||||
if ((r == 0) && (fn != b_source1)) // stage 1
|
|
||||||
continue;
|
|
||||||
|
|
||||||
- if (fdcache.probe (b_source0, fn)) // skip if already interned
|
|
||||||
+ if (fdcache.probe (b_source0, fn) && // skip if already interned
|
|
||||||
+ fn != b_source1) // but only if we'd just be prefetching, PR29474
|
|
||||||
continue;
|
|
||||||
|
|
||||||
// extract this file to a temporary file
|
|
||||||
--
|
|
||||||
2.37.1
|
|
||||||
|
|
@ -1,50 +0,0 @@
|
|||||||
From f1252e4dbe781f75d806ce0b990779548eeeb7a9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Mark Wielaard <mark@klomp.org>
|
|
||||||
Date: Tue, 3 May 2022 17:48:55 +0200
|
|
||||||
Subject: [PATCH] config: Move the 2>/dev/null inside the sh -c '' quotes for
|
|
||||||
profile.csh.
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
csh/tcsh would warn about "Ambiguous output redirect" if not done inside
|
|
||||||
the sh -c command.
|
|
||||||
|
|
||||||
Fix-by: наб <nabijaczleweli@nabijaczleweli.xyz>
|
|
||||||
|
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=2080957
|
|
||||||
|
|
||||||
Signed-off-by: Mark Wielaard <mark@klomp.org>
|
|
||||||
---
|
|
||||||
config/ChangeLog | 4 ++++
|
|
||||||
config/profile.csh.in | 2 +-
|
|
||||||
2 files changed, 5 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/config/ChangeLog b/config/ChangeLog
|
|
||||||
index 51415258..cfb37b42 100644
|
|
||||||
--- a/config/ChangeLog
|
|
||||||
+++ b/config/ChangeLog
|
|
||||||
@@ -1,3 +1,7 @@
|
|
||||||
+2022-05-03 Mark Wielaard <mark@klomp.org>
|
|
||||||
+
|
|
||||||
+ * profile.csh.in: Move the 2>/dev/null inside the sh -c '' quotes.
|
|
||||||
+
|
|
||||||
2022-04-25 Mark Wielaard <mark@klomp.org>
|
|
||||||
|
|
||||||
* elfutils.spec.in: Update for 0.187.
|
|
||||||
diff --git a/config/profile.csh.in b/config/profile.csh.in
|
|
||||||
index 012e243a..74c20c99 100644
|
|
||||||
--- a/config/profile.csh.in
|
|
||||||
+++ b/config/profile.csh.in
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
|
|
||||||
if (! $?DEBUGINFOD_URLS) then
|
|
||||||
set prefix="@prefix@"
|
|
||||||
- set DEBUGINFOD_URLS=`sh -c 'cat "$0"/*.urls; :' "@sysconfdir@/debuginfod" 2>/dev/null | tr '\n' ' '`
|
|
||||||
+ set DEBUGINFOD_URLS=`sh -c 'cat "$0"/*.urls 2>/dev/null; :' "@sysconfdir@/debuginfod" | tr '\n' ' '`
|
|
||||||
if ( "$DEBUGINFOD_URLS" != "" ) then
|
|
||||||
setenv DEBUGINFOD_URLS "$DEBUGINFOD_URLS"
|
|
||||||
else
|
|
||||||
--
|
|
||||||
2.36.1
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:e70b0dfbe610f90c4d1fe0d71af142a4e25c3c4ef9ebab8d2d72b65159d454c8
|
|
||||||
size 9240221
|
|
Binary file not shown.
3
elfutils-0.188.tar.bz2
Normal file
3
elfutils-0.188.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:fb8b0e8d0802005b9a309c60c1d8de32dd2951b56f0c3a3cb56d21ce01595dff
|
||||||
|
size 9112977
|
BIN
elfutils-0.188.tar.bz2.sig
Normal file
BIN
elfutils-0.188.tar.bz2.sig
Normal file
Binary file not shown.
@ -1,3 +1,23 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Nov 7 08:38:51 UTC 2022 - Martin Liška <mliska@suse.cz>
|
||||||
|
|
||||||
|
- Update to version 0.188:
|
||||||
|
* readelf: Add -D, --use-dynamic option.
|
||||||
|
* debuginfod-client: Add $DEBUGINFOD_HEADERS_FILE setting to supply
|
||||||
|
outgoing debuginfod_find_section.
|
||||||
|
* debuginfod: Add --disable-source-scan option.
|
||||||
|
* libdwfl: Add new function dwfl_get_debuginfod_client.
|
||||||
|
Add new function dwfl_frame_reg.
|
||||||
|
Add new function dwfl_report_offline_memory.
|
||||||
|
- Remove upstreamed patches:
|
||||||
|
* 0001-libelf-Sync-elf.h-from-glibc.patch
|
||||||
|
* 0002-backends-Handle-new-RISC-V-specific-definitions.patch
|
||||||
|
* 0003-elflint-Allow-zero-p_memsz-for-PT_RISCV_ATTRIBUTES.patch
|
||||||
|
* 0004-readelf-Handle-SHT_RISCV_ATTRIBUTES-like-SHT_GNU_ATT.patch
|
||||||
|
* PR29474-debuginfod.patch
|
||||||
|
* config-Move-the-2-dev-null-inside-the-sh-c-quotes-fo.patch
|
||||||
|
* support-nullglob-in-profile.-.in-files.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Aug 17 11:42:11 UTC 2022 - Martin Liška <mliska@suse.cz>
|
Wed Aug 17 11:42:11 UTC 2022 - Martin Liška <mliska@suse.cz>
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: elfutils-debuginfod
|
Name: elfutils-debuginfod
|
||||||
Version: 0.187
|
Version: 0.188
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Debuginfod server provided by elfutils
|
Summary: Debuginfod server provided by elfutils
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
@ -30,9 +30,6 @@ Source2: elfutils.changes
|
|||||||
Source3: elfutils.keyring
|
Source3: elfutils.keyring
|
||||||
Source4: %{name}.sysusers
|
Source4: %{name}.sysusers
|
||||||
Patch1: harden_debuginfod.service.patch
|
Patch1: harden_debuginfod.service.patch
|
||||||
Patch2: config-Move-the-2-dev-null-inside-the-sh-c-quotes-fo.patch
|
|
||||||
Patch3: PR29474-debuginfod.patch
|
|
||||||
Patch4: support-nullglob-in-profile.-.in-files.patch
|
|
||||||
BuildRequires: autoconf
|
BuildRequires: autoconf
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: bison
|
BuildRequires: bison
|
||||||
@ -194,6 +191,7 @@ export XFAIL_TESTS="dwfl-proc-attach run-backtrace-dwarf.sh run-backtrace-native
|
|||||||
%{_mandir}/man8/debuginfod.8*
|
%{_mandir}/man8/debuginfod.8*
|
||||||
%{_fillupdir}/sysconfig.debuginfod
|
%{_fillupdir}/sysconfig.debuginfod
|
||||||
%{_sysusersdir}/%{name}.conf
|
%{_sysusersdir}/%{name}.conf
|
||||||
|
%{_mandir}/man8/debuginfod.service.8.*
|
||||||
|
|
||||||
%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod
|
%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod
|
||||||
%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
|
%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
|
||||||
|
@ -1,3 +1,23 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Nov 7 08:38:51 UTC 2022 - Martin Liška <mliska@suse.cz>
|
||||||
|
|
||||||
|
- Update to version 0.188:
|
||||||
|
* readelf: Add -D, --use-dynamic option.
|
||||||
|
* debuginfod-client: Add $DEBUGINFOD_HEADERS_FILE setting to supply
|
||||||
|
outgoing debuginfod_find_section.
|
||||||
|
* debuginfod: Add --disable-source-scan option.
|
||||||
|
* libdwfl: Add new function dwfl_get_debuginfod_client.
|
||||||
|
Add new function dwfl_frame_reg.
|
||||||
|
Add new function dwfl_report_offline_memory.
|
||||||
|
- Remove upstreamed patches:
|
||||||
|
* 0001-libelf-Sync-elf.h-from-glibc.patch
|
||||||
|
* 0002-backends-Handle-new-RISC-V-specific-definitions.patch
|
||||||
|
* 0003-elflint-Allow-zero-p_memsz-for-PT_RISCV_ATTRIBUTES.patch
|
||||||
|
* 0004-readelf-Handle-SHT_RISCV_ATTRIBUTES-like-SHT_GNU_ATT.patch
|
||||||
|
* PR29474-debuginfod.patch
|
||||||
|
* config-Move-the-2-dev-null-inside-the-sh-c-quotes-fo.patch
|
||||||
|
* support-nullglob-in-profile.-.in-files.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Oct 14 08:55:22 UTC 2022 - Martin Liška <mliska@suse.cz>
|
Fri Oct 14 08:55:22 UTC 2022 - Martin Liška <mliska@suse.cz>
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: elfutils
|
Name: elfutils
|
||||||
Version: 0.187
|
Version: 0.188
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Higher-level library to access ELF files
|
Summary: Higher-level library to access ELF files
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
@ -40,10 +40,6 @@ BuildRequires: libzstd-devel
|
|||||||
BuildRequires: xz-devel
|
BuildRequires: xz-devel
|
||||||
BuildRequires: zlib-devel
|
BuildRequires: zlib-devel
|
||||||
|
|
||||||
Patch24300: 0001-libelf-Sync-elf.h-from-glibc.patch
|
|
||||||
Patch24301: 0002-backends-Handle-new-RISC-V-specific-definitions.patch
|
|
||||||
Patch24302: 0003-elflint-Allow-zero-p_memsz-for-PT_RISCV_ATTRIBUTES.patch
|
|
||||||
Patch24303: 0004-readelf-Handle-SHT_RISCV_ATTRIBUTES-like-SHT_GNU_ATT.patch
|
|
||||||
Patch24304: 0005-backends-Add-RISC-V-object-attribute-printing.patch
|
Patch24304: 0005-backends-Add-RISC-V-object-attribute-printing.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
|
@ -1,48 +0,0 @@
|
|||||||
From 538f0c744dd4e1d931b98d01425b45137afcd9a4 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Martin Liska <mliska@suse.cz>
|
|
||||||
Date: Tue, 16 Aug 2022 15:14:26 +0200
|
|
||||||
Subject: [PATCH] Support nullglob in profile.*.in files
|
|
||||||
|
|
||||||
In openSUSE we have the following RPM checker that uses
|
|
||||||
shopt -s nullglob:
|
|
||||||
https://github.com/openSUSE/post-build-checks/blob/master/checks/50-check-libtool-deps#L31
|
|
||||||
|
|
||||||
The script loads all /etc/profile.d/*.sh files via source $FILE which
|
|
||||||
can end up by stuck cat (with no arguments):
|
|
||||||
|
|
||||||
shopt -s nullglob ; cat "/etc/debuginfod"/*.urls
|
|
||||||
(stuck)
|
|
||||||
---
|
|
||||||
config/profile.csh.in | 2 +-
|
|
||||||
config/profile.sh.in | 2 +-
|
|
||||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/config/profile.csh.in b/config/profile.csh.in
|
|
||||||
index 74c20c99..d962d969 100644
|
|
||||||
--- a/config/profile.csh.in
|
|
||||||
+++ b/config/profile.csh.in
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
|
|
||||||
if (! $?DEBUGINFOD_URLS) then
|
|
||||||
set prefix="@prefix@"
|
|
||||||
- set DEBUGINFOD_URLS=`sh -c 'cat "$0"/*.urls 2>/dev/null; :' "@sysconfdir@/debuginfod" | tr '\n' ' '`
|
|
||||||
+ set DEBUGINFOD_URLS=`sh -c 'cat /dev/null "$0"/*.urls 2>/dev/null; :' "@sysconfdir@/debuginfod" | tr '\n' ' '`
|
|
||||||
if ( "$DEBUGINFOD_URLS" != "" ) then
|
|
||||||
setenv DEBUGINFOD_URLS "$DEBUGINFOD_URLS"
|
|
||||||
else
|
|
||||||
diff --git a/config/profile.sh.in b/config/profile.sh.in
|
|
||||||
index bad20b1e..3f4397dc 100644
|
|
||||||
--- a/config/profile.sh.in
|
|
||||||
+++ b/config/profile.sh.in
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
|
|
||||||
if [ -z "$DEBUGINFOD_URLS" ]; then
|
|
||||||
prefix="@prefix@"
|
|
||||||
- DEBUGINFOD_URLS=$(cat "@sysconfdir@/debuginfod"/*.urls 2>/dev/null | tr '\n' ' ')
|
|
||||||
+ DEBUGINFOD_URLS=$(cat /dev/null "@sysconfdir@/debuginfod"/*.urls 2>/dev/null | tr '\n' ' ')
|
|
||||||
[ -n "$DEBUGINFOD_URLS" ] && export DEBUGINFOD_URLS || unset DEBUGINFOD_URLS
|
|
||||||
unset prefix
|
|
||||||
fi
|
|
||||||
--
|
|
||||||
2.37.1
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user