This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug gdb/10737] catch syscall name mappings (xml) should be per-arch or per-target, not global


https://sourceware.org/bugzilla/show_bug.cgi?id=10737

--- Comment #5 from Pedro Alves <palves at redhat dot com> ---
A related question is how to handle syscalls by name ("catch syscall open"):

#1 - when the user kills the program, and then starts another one, of a
different architecture, in the same inferior.  E.g.,

  - file prog64
  - start
  - catch syscall open
  - kill
  - file prog32
  - run

#2 - similarly, when a 64-bit inferior execs a 32-bit inferior.

  - file prog64
  - start
  - catch syscall open (2 on 64-bit)
  - continue
  - inferior execs prog32
  - inferior now calls syscall 2, which is something else on i386.

These two cases may end up handled by the breakpoint_re_set machinery.

#3 - in the presence of multiple inferiors, each with its own arch.

  - file prog64
  - start
  - add-inferior -exec prog32
  - inferior 2
  - start
  - catch syscall open
  - set schedule-multiple on
  - c
  - both inferiors call "open"

Here, I don't think we'll catch inferior 1's.  syscall catchpoints is presently
inferior-specific; while I think it should end up with a location per inferior
instead, and "open" should be parsed in each inferior's/location's arch.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]