[PATCH] Fix AMD64 backtrace
Andreas Jaeger
aj@suse.de
Sat Jan 10 19:22:00 GMT 2004
Ulrich Drepper <drepper@redhat.com> writes:
> I have added the patch bu
>
> ~ there is no LinuxThreads patch
Appended - I'll commit it myself now.
> ~ if you send mails signed (or any MIME mail) don't include the patches
> inlined.
What exactly is the problem?
Andreas
============================================================
Index: linuxthreads/sysdeps/unix/sysv/linux/x86_64/vfork.S
--- linuxthreads/sysdeps/unix/sysv/linux/x86_64/vfork.S 11 Feb 2003 06:27:54 -0000 1.4
+++ linuxthreads/sysdeps/unix/sysv/linux/x86_64/vfork.S 10 Jan 2004 19:21:58 -0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -39,6 +39,7 @@ ENTRY (__vfork)
/* Pop the return PC value into RDI. We need a register that
is preserved by the syscall and that we're allowed to destroy. */
popq %rdi
+ cfi_adjust_cfa_offset(-8)
/* Stuff the syscall number in RAX and enter into the kernel. */
movl $SYS_ify (vfork), %eax
@@ -46,6 +47,7 @@ ENTRY (__vfork)
/* Push back the return PC. */
pushq %rdi
+ cfi_adjust_cfa_offset(-7)
cmpl $-4095, %eax
jae SYSCALL_ERROR_LABEL /* Branch forward if it failed. */
--
Andreas Jaeger, aj@suse.de, http://www.suse.de/~aj
SuSE Linux AG, Maxfeldstr. 5, 90409 Nürnberg, Germany
GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126
More information about the Libc-hacker
mailing list