mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-16 10:20:30 +00:00
Bug fix: %ebx needs to be preserved in the user callchain capture
path.
This commit is contained in:
parent
6821c5f657
commit
4e706fe392
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=186076
@ -459,9 +459,9 @@ nmi_calltrap:
|
||||
*/
|
||||
movq %rsp,%rsi /* source stack pointer */
|
||||
movq $TF_SIZE,%rcx
|
||||
movq PCPU(RSP0),%rbx
|
||||
subq %rcx,%rbx
|
||||
movq %rbx,%rdi /* destination stack pointer */
|
||||
movq PCPU(RSP0),%rdx
|
||||
subq %rcx,%rdx
|
||||
movq %rdx,%rdi /* destination stack pointer */
|
||||
|
||||
shrq $3,%rcx /* trap frame size in long words */
|
||||
cld
|
||||
@ -470,7 +470,7 @@ nmi_calltrap:
|
||||
|
||||
movl %ss,%eax
|
||||
pushq %rax /* tf_ss */
|
||||
pushq %rbx /* tf_rsp (on kernel stack) */
|
||||
pushq %rdx /* tf_rsp (on kernel stack) */
|
||||
pushfq /* tf_rflags */
|
||||
movl %cs,%eax
|
||||
pushq %rax /* tf_cs */
|
||||
|
Loading…
Reference in New Issue
Block a user