This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 11/14] tile: fix bug in CFI definitions for clone.S


We were missing a critical cfi_def_cfa_offset call in .Lthread_start
which caused backtracing to get badly confused for threads.
---
 ChangeLog.tile                            |    4 ++++
 sysdeps/unix/sysv/linux/tile/nptl/clone.S |    3 ++-
 2 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/ChangeLog.tile b/ChangeLog.tile
index f2eb35a..ae048dd 100644
--- a/ChangeLog.tile
+++ b/ChangeLog.tile
@@ -1,5 +1,9 @@
 2012-05-12  Chris Metcalf  <cmetcalf@tilera.com>
 
+	* sysdeps/unix/sysv/linux/tile/nptl/clone.S: Add missing CFI.
+
+2012-05-12  Chris Metcalf  <cmetcalf@tilera.com>
+
 	* sysdeps/tile/tls-macros.h: Fix buggy TLS_GD, etc., macros.
 
 2012-05-12  Chris Metcalf  <cmetcalf@tilera.com>
diff --git a/sysdeps/unix/sysv/linux/tile/nptl/clone.S b/sysdeps/unix/sysv/linux/tile/nptl/clone.S
index eaa2fd6..de4fa13 100644
--- a/sysdeps/unix/sysv/linux/tile/nptl/clone.S
+++ b/sysdeps/unix/sysv/linux/tile/nptl/clone.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2011 Free Software Foundation, Inc.
+/* Copyright (C) 2011-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Chris Metcalf <cmetcalf@tilera.com>, 2011.
 
@@ -167,6 +167,7 @@ ENTRY (__clone)
 	   in getpid().  Otherwise (if CLONE_VM isn't set), it's a
 	   fork-like clone, and we go ahead and write the cached values
 	   from the true system pid (retrieved via __NR_getpid syscall).  */
+	cfi_def_cfa_offset (FRAME_SIZE)
 #ifdef __tilegx__
 	{
 	 moveli r0, hw1_last(CLONE_VM)
-- 
1.6.5.2


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]