tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Analyzing a 4.0/amd64 panic



> The kernel is compiled with frame pointers,
Oh, that's good news.
However, I can't make sense out of the stack data. Is it possible to let
gdb automatically traverse the frame pointers?

Here are the registers:
(gdb) info registers
rax            0x0      0
rbx            0x10     16
rcx            0x0      0
rdx            0x0      0
rsi            0x0      0
rdi            0x0      0
rbp            0xffffffff80380e40       0xffffffff80380e40 <sddump>
rsp            0xffff80004e2c9818       0xffff80004e2c9818
r8             0x0      0
r9             0x0      0
r10            0x0      0
r11            0x0      0
r12            0x1      1
r13            0xdb627000       3680661504
r14            0xfbef0000       4226744320
r15            0xffffffff8036cb5a       -2143892646
rip            0x100    0x100
eflags         0x0      0
ds             0x0      0
es             0x0      0
fs             0x0      0
gs             0x0      0
fctrl          0x0      0
fstat          0x0      0
ftag           0x0      0
fiseg          0x0      0
fioff          0x0      0
foseg          0x0      0
fooff          0x0      0
fop            0x0      0
xmm0           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm1           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm2           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm3           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm4           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm5           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm6           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm7           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm8           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm9           {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm10          {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm11          {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm12          {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm13          {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm14          {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
xmm15          {f = {0x0, 0x0, 0x0, 0x0}}       {f = {0, 0, 0, 0}}
mxcsr          0x0      0

and here's the top of the stack (assuming that a amd64 stack works like the
stacks I used to know):
0xffff80004e2c9818:     0xffffffff8036cb5a      0x00000000fbef0000
0xffff80004e2c9828:     0x00000000db627000      0x0000000000000001
0xffff80004e2c9838:     0xffffffff80380e40      0x0000000000000010
0xffff80004e2c9848:     0x0000000000000100      0xffffffff804688a0
0xffff80004e2c9858:     0x0000000000000000      0xffffffff80601580
0xffff80004e2c9868:     0xffff800051cfb2d0      0xffff80004e2c5000
0xffff80004e2c9878:     0xffffffff8036ccf2      0x0000000000000000
0xffff80004e2c9888:     0xffffffff8019ffc8      0x000000000000000a
0xffff80004e2c9898:     0xffffffff80468640      0x0000000000000100
0xffff80004e2c98a8:     0xffffffff8019fb2b      0xffffffff806ac640
0xffff80004e2c98b8:     0xffffffff803b8cfd      0x000000000000000a
0xffff80004e2c98c8:     0xffffffff8067bd80      0x000000000000000a
0xffff80004e2c98d8:     0x0000000000000000      0xffff80004e2c9be0
0xffff80004e2c98e8:     0xffff800051cfb2d0      0xffff80004e2c5000
0xffff80004e2c98f8:     0xffffffff803b4981      0x0aff80004e2c9be0
0xffff80004e2c9908:     0xffffffff8037362d      0x0dffffff8067bd80
0xffff80004e2c9918:     0xffffffff801a1c5e      0xffffffff8067bd80
0xffff80004e2c9928:     0xffffffff801a0c39      0x0000000000000000
0xffff80004e2c9938:     0xffffffff801a103e      0xffffffff8028eeb6
0xffff80004e2c9948:     0x0000000000000000      0xffff80004e2c99c8
0xffff80004e2c9958:     0x0000000000000000      0xffff80004e2c9be0
0xffff80004e2c9968:     0xffffffff8019ff17      0x0000008000000000
0xffff80004e2c9978:     0x0000000000000000      0x0000000000000000
0xffff80004e2c9988:     0xffff80004e2c9968      0x0000000000000006
0xffff80004e2c9998:     0x0000000000000000      0xffff80004e2c9be0
0xffff80004e2c99a8:     0xffff800051cfb2d0      0xffff80004e2c5000
0xffff80004e2c99b8:     0xffffffff8019fe72      0x0000000000000006
0xffff80004e2c99c8:     0x0000000000000000      0xffff80004e2c9be0
0xffff80004e2c99d8:     0x0000000000000000      0x0000000000000006
0xffff80004e2c99e8:     0xffffffff801a281c      0x0000000000000001
0xffff80004e2c99f8:     0x0000000080373698      0x0000000000000000
0xffff80004e2c9a08:     0xffffffff80368c87      0xffff8000554f4220
0xffff80004e2c9a18:     0xffffffff802f99a2      0xffff80004e2c5000
0xffff80004e2c9a28:     0xffffffff802fe126      0x0000003000000028
0xffff80004e2c9a38:     0xffff80004e2c9b10      0xffff80004e2c9a50
0xffff80004e2c9a48:     0x0000000000000000      0x0000000000000000
0xffff80004e2c9a58:     0xffff80005c2574a0      0x0000000000000000
0xffff80004e2c9a68:     0x0000000000000001      0x000000000000000e
0xffff80004e2c9a78:     0x0000000000000001      0x0000000000001000
0xffff80004e2c9a88:     0xffff80005c2574a0      0x0000000000000001
0xffff80004e2c9a98:     0xffff80005c2574e8      0x0000000000001000
0xffff80004e2c9aa8:     0xffffffff802d85cd      0xffff800055381e58
0xffff80004e2c9ab8:     0x0000000000000000      0x0000000000000000
0xffff80004e2c9ac8:     0x000000000000121a      0x000000000986d800
0xffff80004e2c9ad8:     0x0000000000000000      0xffff8000554f4220
0xffff80004e2c9ae8:     0xffff80004e2c9b60      0xffff8000554f4220
0xffff80004e2c9af8:     0x0000000000000006      0xffff80004e2c9be0
0xffff80004e2c9b08:     0xffffffff803724c3      0xffffffff8048ff60
0xffff80004e2c9b18:     0x000000004dcd1808      0xffff800055381f20
0xffff80004e2c9b28:     0x0000000000000000      0x0000000000000000
0xffff80004e2c9b38:     0x0000000000000001      0xffff800055381e58
0xffff80004e2c9b48:     0x0100000000001218      0xffff80005c2574a0
0xffff80004e2c9b58:     0xffff80005c2574a0      0x0000000000000001
0xffff80004e2c9b68:     0x0000000000000000      0x0000000000000000
0xffff80004e2c9b78:     0x0000000100000000      0x0000000000000000
0xffff80004e2c9b88:     0x0000000000000080      0x0000000000000006
0xffff80004e2c9b98:     0x0000000000000000      0xffff8000554f4220
0xffff80004e2c9ba8:     0xffff80000c719700      0xffff80004e20d910
0xffff80004e2c9bb8:     0x000000000000313b      0x0000000000000000
0xffff80004e2c9bc8:     0xffff80000986d800      0xffff8000098b9000
0xffff80004e2c9bd8:     0xffffffff80100e36      0x0000000000000000
0xffff80004e2c9be8:     0x000000000000313b      0x0000000000000000
0xffff80004e2c9bf8:     0x0000000000000000      0xffff80004e2c9d70
0xffff80004e2c9c08:     0xffffffff80328032      0x0000000000000000
0xffff80004e2c9c18:     0xffffffff801155d0      0x000000000000313b
0xffff80004e2c9c28:     0x0000000000000000      0xffff80000986d800
0xffff80004e2c9c38:     0xffff8000098b9000      0xffff80004e20d910
0xffff80004e2c9c48:     0xffff80000c719700      0x0000000000000000
0xffff80004e2c9c58:     0xffff80005ab95230      0xffffffff00000000
0xffff80004e2c9c68:     0xffff800055381e58      0xffff800000000000
0xffff80004e2c9c78:     0x0000000000000006      0x0000000000000000
0xffff80004e2c9c88:     0xffffffff8028eeae      0x0000000000000008
0xffff80004e2c9c98:     0x0000000000010246      0xffff80004e2c9cb0
0xffff80004e2c9ca8:     0x0000000000000010      0xffff8000554f4220
0xffff80004e2c9cb8:     0xffff80004e2c9d70      0x0000000000000000
0xffff80004e2c9cc8:     0x0000000000000000      0x0000000000000001
0xffff80004e2c9cd8:     0xffff800008f3c0a0      0xffff8000098b9958
0xffff80004e2c9ce8:     0xffffffff802d83bf      0x000000004e2c9d10
0xffff80004e2c9cf8:     0x0000000055381e58      0xffff8000098b9038
0xffff80004e2c9d08:     0xffffffff802aaa6f      0x000000004cbc3c00

> If that printf is actually in the call sequence, then identifying it
> is probably useful info!
What do you mean by ,,identifying it''?

Thanks for any help.



Home | Main Index | Thread Index | Old Index