there is a stack problem which is not in accordance with x86_64 stack layout

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

 




Hello, I found some confusing things during the usage of analysing the stack data.
Summury:
with the same demo named oops.ko and the same architecure(x86_64), there are two different stack layout
the demo make a crash with hungtask.

1) kernel version 
[root@localhost ~]# uname -r
3.10.0-693.el7.x86_64
gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)
crash version:
[root@localhost ~]# crash --version
crash 7.1.9-2.el7

[root@localhost ~]# gdb -v

GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-100.el7\

bt -f pid


1--the callback address for create_oops function
2--the rbp register value for stack frame 5, point to the address ffff8800a637fd69.
this layout in accordance with the x86_64 stack principle

2) kernel version
[root@kylinv10 ~]# uname -r
4.19.90-24.4.v2101.ky10.x86_64
gcc version:

[root@kylinv10 ~]# gcc --version
gcc (GCC) 7.3.0

[root@kylinv10 ~]# gdb -v
GNU gdb (GDB) EulerOS 9.2-1.ky10

crash version:
[root@kylinv10 ~]# crash --version
crash 7.2.9-2.p02.ky10

bt -f pid

 1/2/3--there should be the value for the next stack frame's(in higher address) rbp register value, should be the valid address in this stack.
but, they are invalid address "0000000000000001"  "ffff8adb5424ccc0" and "ffffffffc096b000"

I don't know the reason.4.19kernel, has this kernel param value like:
kernel.randomize_va_space=0

thank you.
 --
Jane


 

--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://listman.redhat.com/mailman/listinfo/crash-utility

[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux