public inbox for binutils-cvs@sourceware.org
 help / color / mirror / Atom feed
* [binutils-gdb] bpf: opcodes: fix regression in BPF disassembler
@ 2023-07-31 13:46 Jose E. Marchesi
  0 siblings, 0 replies; only message in thread
From: Jose E. Marchesi @ 2023-07-31 13:46 UTC (permalink / raw)
  To: bfd-cvs

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5b512234c874d5f82734dc6115765bc691c2c982

commit 5b512234c874d5f82734dc6115765bc691c2c982
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Mon Jul 31 15:44:36 2023 +0200

    bpf: opcodes: fix regression in BPF disassembler
    
    This patch fixes a regression recently introduced in the BPF
    disassembler, that was assuming an abfd was always available in
    info->section->owner.  Apparently this is not so in GDB, and therefore
    https://sourceware.org/bugzilla/show_bug.cgi?id=30705.
    
    Tested in bpf-unkonwn-none.
    
    opcodes/ChangeLog:
    
    2023-07-31  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
            PR 30705
            * bpf-dis.c (print_insn_bpf): Check that info->section->owner is
            actually available before using it.

Diff:
---
 opcodes/ChangeLog | 6 ++++++
 opcodes/bpf-dis.c | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 9d33da21627..99f95c64568 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,9 @@
+2023-07-31  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	PR 30705
+	* bpf-dis.c (print_insn_bpf): Check that info->section->owner is
+	actually available before using it.
+
 2023-07-30  Jose E. Marchesi  <jose.marchesi@oracle.com>
 
 	* bpf-dis.c: Initialize asm_bpf_version to -1.
diff --git a/opcodes/bpf-dis.c b/opcodes/bpf-dis.c
index a8cb9e8e6db..1b1a532df74 100644
--- a/opcodes/bpf-dis.c
+++ b/opcodes/bpf-dis.c
@@ -147,7 +147,7 @@ print_insn_bpf (bfd_vma pc, disassemble_info *info)
      If the user didn't explicitly specify an ISA version, then derive
      it from the CPU Version flag in the ELF header.  A CPU version of
      0 in the header means "latest version".  */
-  if (asm_bpf_version == -1)
+  if (asm_bpf_version == -1 && info->section && info->section->owner)
     {
       struct bfd *abfd = info->section->owner;
       Elf_Internal_Ehdr *header = elf_elfheader (abfd);

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-07-31 13:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-31 13:46 [binutils-gdb] bpf: opcodes: fix regression in BPF disassembler Jose E. Marchesi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).