[haiku-bugs] Re: [Haiku] #6751: gdb won't single step

  • From: "grahamh" <trac@xxxxxxxxxxxx>
  • Date: Tue, 26 Oct 2010 22:39:48 -0000

#6751: gdb won't single step
----------------------------------------------+----------------------------
  Reporter:  grahamh                          |        Owner:  bonefish
      Type:  bug                              |       Status:  assigned
  Priority:  normal                           |    Milestone:  R1
 Component:  Applications/Command Line Tools  |      Version:
Resolution:                                   |  R1/Development
Blocked By:                                   |     Keywords:
  Platform:  x86                              |  Has a Patch:  0
                                              |     Blocking:
----------------------------------------------+----------------------------

Comment (by grahamh):

 Some additional digging...

 On single step, GDB is correctly getting back a
 B_DEBUGGER_MESSAGE_SINGLE_STEP. So that part works.

 Next thing it does is call read_pc_pid(), which calls
 haiku_child_fetch_inferior_registers for register 8. This is returning
 0xffff0114 - which explains why that value sometimes crops up in the stack
 trace. GDB then decides, correctly, that this PC value isn't anywhere near
 where it ought to have stopped, and so just carries on.

 haiku_child_fetch_inferior_registers is supposed to send a
 B_DEBUG_MESSAGE_GET_CPU_STATE to fetch the registers. The next thing to do
 is to figure out if it's sending the wrong message (a gdb problem) or if
 it's getting the wrong reply (maybe a kernel problem).

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/6751#comment:5>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: