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 macros/16855] New: Backtrace stopped: frame did not save the PC


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

            Bug ID: 16855
           Summary: Backtrace stopped: frame did not save the PC
           Product: gdb
           Version: 7.7
            Status: NEW
          Severity: normal
          Priority: P2
         Component: macros
          Assignee: unassigned at sourceware dot org
          Reporter: bkorb at gnu dot org

I ran a gdb macro that chased through a linked list.  When done, the stack
trace was hosed.  I do not think that running a macro should _EVER_ trash the
stack.

(gdb) all bt

Thread 4 (Thread 0x7ffdda3e7700 (LWP 869)):
#0  0x0000003135032925 in raise () from /lib64/libc.so.6
#1  0x0000003135034105 in abort () from /lib64/libc.so.6
#2  0x000000313502ba4e in __assert_fail_base () from /lib64/libc.so.6
#3  0x000000313502bb10 in __assert_fail () from /lib64/libc.so.6
#4  0x000000000053b83d in rm_from_list_locked (le=0x17cfe340
<hostMemBufMngr+332112704>) at src/bfr/bfrFuncs.h:59
#5  0x000000000053b8b2 in get_from_list_locked (lh=0x17d14fe8
<hostMemBufMngr+332206056>) at src/bfr/bfrFuncs.h:77
#6  0x000000000053b98b in bfrGetCmdWrEntry (ssdId=3, q_idx=4, se_id=0) at
src/bfr/bfrFuncs.h:109
#7  0x000000000053bcdd in GetHotPrgQueWrPtr (ssdId=3) at
src/hostm/sciHwFacade.h:324
#8  0x0000000000546cde in ThreadFncWriteComplete (writerContext=0x6cc9cce0
<Ftl+141952>) at src/main/sciThreadWriteComplete.c:1966
#9  0x0000000000540cc8 in ThreadFncHotWriteComplete () at
src/main/sciThreadWriteComplete.c:460
#10 0x00000000004ef98f in sciFtl2Thread (arg=0x6cd34c70 <sciThreadParam+48>) at
src/main/sciFtlThread.c:423
#11 0x00000031354079d1 in start_thread () from /lib64/libpthread.so.0
#12 0x00000031350e8b6d in clone () from /lib64/libc.so.6

(gdb) source list.gdb
(gdb) list_count &cqd->bfrcd_list
   1 -> 0x17cfe2f8
[...]
 255 -> 0x17cfe388
found 255 elements in 0x17d14fc0
(gdb) bt
#0  0x0000000017cfe388 in hostMemBufMngr ()
#1  0x0000003135034105 in abort () from /lib64/libc.so.6
#2  0x000000313502ba4e in __assert_fail_base () from /lib64/libc.so.6
#3  0x000000313502bb10 in __assert_fail () from /lib64/libc.so.6
#4  0x000000000053b83d in rm_from_list_locked (le=0x17cfe340
<hostMemBufMngr+332112704>) at src/bfr/bfrFuncs.h:59
#5  0x000000000053b8b2 in get_from_list_locked (lh=0x17d14fe8
<hostMemBufMngr+332206056>) at src/bfr/bfrFuncs.h:77
#6  0x0000000017cfe2f8 in hostMemBufMngr ()
#7  0x0000000017879e58 in hostMemBufMngr ()
#8  0x0000000300000004 in ?? ()
#9  0x0000000017cfe388 in hostMemBufMngr ()
#10 0x0000000017879d30 in hostMemBufMngr ()
#11 0x0000000017879e58 in hostMemBufMngr ()
#12 0x0000000017d14fc0 in hostMemBufMngr ()
#13 0x0000000006694000 in hostMemBufMngr ()
#14 0x0000000017cfe340 in hostMemBufMngr ()
#15 0x00007ffdda3e6c90 in ?? ()
#16 0x000000000053bcdd in GetHotPrgQueWrPtr (ssdId=0) at
src/hostm/sciHwFacade.h:324
Backtrace stopped: frame did not save the PC



$ cat list.gdb
# -*- python -*-

define list_count
  set $head = $arg0
  set $elem = $head->ll_next
  set $ct   = 0

  while $elem != $head
    set $ct += 1
    set $pc  = (bfr_pendcmd_t*)$elem
#    set $cmd = (SFctlGenTagCmd*)&(((struct bfr_pendcmd*)$pc)->bfrpc_cmd)
#    printf "%4u -> %p tag 0x%X\n", $ct, $elem, $cmd->tag
    printf "%4u -> %p\n", $ct, $elem
    if $elem == $elem->ll_next
      printf "malformed element at %p\n", $elem
      p *$elem
      loop_break
    end
    set $elem = $elem->ll_next
  end

  printf "found %u elements in %p\n", $ct, $head
end

-- 
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]