rpms/strace/devel strace-4.5.14-getsiginfo.patch, NONE, 1.1 strace.spec, 1.41, 1.42

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon Nov 20 13:22:13 UTC 2006


Author: jakub

Update of /cvs/dist/rpms/strace/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv5365

Modified Files:
	strace.spec 
Added Files:
	strace-4.5.14-getsiginfo.patch 
Log Message:
4.5.14-4

strace-4.5.14-getsiginfo.patch:
 strace.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

--- NEW FILE strace-4.5.14-getsiginfo.patch ---
Since mid-September 2006, glibc sys/ptrace.h defines PT_GETSIGINFO
on all arches, while strace clearly assumed just ia64.
I have no idea why GETSIGINFO is combined with pc setting, IMHO
the latter should be guarded with defined IA64, as it is clearly
IA64 specific, while for PT{,RACE}_GETSIGINFO IMHO we should always
do what the #elif was doing, i.e. verify the syscall return value
and only look at si.si_addr for signals that set it.
In the mean time, this is a hack to get things to build.

--- strace/strace.c.jj	2006-01-12 04:50:49.000000000 -0500
+++ strace/strace.c	2006-11-20 08:14:34.000000000 -0500
@@ -2251,7 +2251,7 @@ Process %d attached (waiting for parent)
 			if (!cflag
 			    && (qual_flags[WSTOPSIG(status)] & QUAL_SIGNAL)) {
 				unsigned long addr = 0, pc = 0;
-#ifdef PT_GETSIGINFO
+#if defined PT_GETSIGINFO && defined IA64
 #				define PSR_RI	41
 				struct siginfo si;
 				unsigned long psr;
@@ -2262,7 +2262,7 @@ Process %d attached (waiting for parent)
 				pc += (psr >> PSR_RI) & 0x3;
 				ptrace(PT_GETSIGINFO, pid, 0, (long) &si);
 				addr = (unsigned long) si.si_addr;
-#elif defined PTRACE_GETSIGINFO
+#elif defined PT_GETSIGINFO || defined PTRACE_GETSIGINFO
 				if (WSTOPSIG(status) == SIGSEGV ||
 				    WSTOPSIG(status) == SIGBUS) {
 					siginfo_t si;


Index: strace.spec
===================================================================
RCS file: /cvs/dist/rpms/strace/devel/strace.spec,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- strace.spec	20 Nov 2006 12:52:10 -0000	1.41
+++ strace.spec	20 Nov 2006 13:22:10 -0000	1.42
@@ -9,6 +9,7 @@
 BuildRoot: %{_tmppath}/%{name}-root
 
 Patch1: strace-4.5.14-subcall400.patch
+Patch2: strace-4.5.14-getsiginfo.patch
 
 %define strace64_arches ppc64
 
@@ -45,6 +46,7 @@
 %setup -q
 
 %patch1 -p1
+%patch2 -p1
 
 %build
 %configure
@@ -81,6 +83,7 @@
 %changelog
 * Mon Nov 20 2006 Jakub Jelinek <jakub at redhat.com> - 4.5.14-4
 - Fix ia64 syscall decoding (#206768)
+- Fix build with glibc-2.4.90-33 and up on all arches but ia64
 
 * Tue Aug 22 2006 Roland McGrath <roland at redhat.com> - 4.5.14-3
 - Fix bogus decoding of syscalls >= 300 (#201462, #202620).
@@ -89,7 +92,7 @@
 - rebuild
 
 * Fri Feb 10 2006 Jesse Keating <jkeating at redhat.com> - 4.5.14-1.2
-- bump again for double-long bug on ppc(64)
+- bump again for long double bug on ppc{,64}
 
 * Tue Feb 07 2006 Jesse Keating <jkeating at redhat.com> - 4.5.14-1.1
 - rebuilt for new gcc4.1 snapshot and glibc changes




More information about the fedora-cvs-commits mailing list