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