This segfault happens when an input file provided to 'objtool orc
generate' doesn't have a '.shstrtab' section (for instance, object
files produced by clang don't have this section).

Signed-off-by: Simon Ser <cont...@emersion.fr>
---
 tools/objtool/orc_gen.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/objtool/orc_gen.c b/tools/objtool/orc_gen.c
index e5ca31429..188f18185 100644
--- a/tools/objtool/orc_gen.c
+++ b/tools/objtool/orc_gen.c
@@ -165,7 +165,8 @@ int create_orc_sections(struct objtool_file *file)
 
        /* create .orc_unwind_ip and .rela.orc_unwind_ip sections */
        sec = elf_create_section(file->elf, ".orc_unwind_ip", sizeof(int), idx);
-
+       if (!sec)
+               return -1;
        ip_relasec = elf_create_rela_section(file->elf, sec);
        if (!ip_relasec)
                return -1;
-- 
2.15.1

Reply via email to