1
0
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:
Joseph Koshy 2008-12-14 09:06:28 +00:00
parent 6821c5f657
commit 4e706fe392
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=186076

View File

@ -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 */