3.6.0-2
This commit is contained in:
parent
858859c58b
commit
4b7bdeb491
40
valgrind-3.6.0-pie.patch
Normal file
40
valgrind-3.6.0-pie.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From eb8d355b64e72bfdf1c8dd2534b1625d5d0118e0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dodji Seketeli <dodji@seketeli.org>
|
||||||
|
Date: Thu, 13 Jan 2011 16:04:39 +0100
|
||||||
|
Subject: [PATCH] Fix crash loading certain binaries on ppc64
|
||||||
|
|
||||||
|
Increase the space left for VDSO on ppc64 compiled with 64KB page
|
||||||
|
size. the size of VDSO is at least 2 pages: one for the code and one
|
||||||
|
for the data. We ought to leave more than two page space then. The
|
||||||
|
patch leaves 8 pages space to comply with what is done already for 4KB
|
||||||
|
page sizes.
|
||||||
|
---
|
||||||
|
coregrind/m_ume/elf.c | 10 ++++++----
|
||||||
|
1 files changed, 6 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
--- valgrind/coregrind/m_ume/elf.c
|
||||||
|
+++ valgrind/coregrind/m_ume/elf.c
|
||||||
|
@@ -327,6 +327,7 @@ Int VG_(load_ELF)(Int fd, const HChar* name, /*MOD*/ExeInfo* info)
|
||||||
|
/* The kernel maps position-independent executables at TASK_SIZE*2/3;
|
||||||
|
duplicate this behavior as close as we can. */
|
||||||
|
if (e->e.e_type == ET_DYN && ebase == 0) {
|
||||||
|
+ ESZ(Addr) hacky_load_address;
|
||||||
|
ebase = VG_PGROUNDDN(info->exe_base
|
||||||
|
+ (info->exe_end - info->exe_base) * 2 / 3);
|
||||||
|
/* We really don't want to load PIEs at zero or too close. It
|
||||||
|
@@ -336,10 +337,11 @@ Int VG_(load_ELF)(Int fd, const HChar* name, /*MOD*/ExeInfo* info)
|
||||||
|
nonpointers. So, hackily, move it above 1MB. */
|
||||||
|
/* Later .. is appears ppc32-linux tries to put [vdso] at 1MB,
|
||||||
|
which totally screws things up, because nothing else can go
|
||||||
|
- there. So bump the hacky load addess along by 0x8000, to
|
||||||
|
- 0x108000. */
|
||||||
|
- if (ebase < 0x108000)
|
||||||
|
- ebase = 0x108000;
|
||||||
|
+ there. The size of [vdso] is around 2 or 3 pages, so bump
|
||||||
|
+ the hacky load addess along by 8 * VKI_PAGE_SIZE to be safe. */
|
||||||
|
+ hacky_load_address = 0x100000 + 8 * VKI_PAGE_SIZE;
|
||||||
|
+ if (ebase < hacky_load_address)
|
||||||
|
+ ebase = hacky_load_address;
|
||||||
|
}
|
||||||
|
|
||||||
|
info->phnum = e->e.e_phnum;
|
11
valgrind-3.6.0-ppc64-pwrite64.patch
Normal file
11
valgrind-3.6.0-ppc64-pwrite64.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- valgrind/coregrind/m_syswrap/syswrap-ppc64-linux.c.jj 2010-10-20 22:19:41.000000000 +0200
|
||||||
|
+++ valgrind/coregrind/m_syswrap/syswrap-ppc64-linux.c 2011-01-28 13:12:32.698670101 +0100
|
||||||
|
@@ -1379,7 +1379,7 @@ static SyscallTableEntry syscall_table[]
|
||||||
|
// _____(__NR_rt_sigsuspend, sys_rt_sigsuspend), // 178
|
||||||
|
GENXY(__NR_pread64, sys_pread64), // 179
|
||||||
|
|
||||||
|
-// _____(__NR_pwrite64, sys_pwrite64), // 180
|
||||||
|
+ GENX_(__NR_pwrite64, sys_pwrite64), // 180
|
||||||
|
GENX_(__NR_chown, sys_chown), // 181
|
||||||
|
GENXY(__NR_getcwd, sys_getcwd), // 182
|
||||||
|
LINXY(__NR_capget, sys_capget), // 183
|
@ -20,6 +20,8 @@ Patch13: valgrind-3.6.0-s390x-4.patch
|
|||||||
Patch14: valgrind-3.6.0-strcasecmp.patch
|
Patch14: valgrind-3.6.0-strcasecmp.patch
|
||||||
Patch15: valgrind-3.6.0-xlc_dbl_u32-test-patch
|
Patch15: valgrind-3.6.0-xlc_dbl_u32-test-patch
|
||||||
Patch16: valgrind-3.6.0-helgrind-tests.patch
|
Patch16: valgrind-3.6.0-helgrind-tests.patch
|
||||||
|
Patch17: valgrind-3.6.0-ppc64-pwrite64.patch
|
||||||
|
Patch18: valgrind-3.6.0-pie.patch
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: http://www.valgrind.org/
|
URL: http://www.valgrind.org/
|
||||||
Group: Development/Debuggers
|
Group: Development/Debuggers
|
||||||
@ -29,10 +31,10 @@ Obsoletes: valgrind-callgrind
|
|||||||
# Ensure glibc{,-devel} is installed for both multilib arches
|
# Ensure glibc{,-devel} is installed for both multilib arches
|
||||||
BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
|
BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?fedora} >= 13 || 0%{?rhel} >= 6
|
%if 0%{?fedora} >= 15
|
||||||
BuildRequires: glibc-devel >= 2.12
|
BuildRequires: glibc-devel >= 2.13
|
||||||
%else
|
%else
|
||||||
BuildRequires: glibc-devel >= 2.11
|
BuildRequires: glibc-devel >= 2.12
|
||||||
%endif
|
%endif
|
||||||
%ifnarch s390x
|
%ifnarch s390x
|
||||||
BuildRequires: openmpi-devel >= 1.3.3
|
BuildRequires: openmpi-devel >= 1.3.3
|
||||||
@ -110,6 +112,8 @@ for details.
|
|||||||
%patch14 -p1
|
%patch14 -p1
|
||||||
%patch15 -p1
|
%patch15 -p1
|
||||||
%patch16 -p1
|
%patch16 -p1
|
||||||
|
%patch17 -p1
|
||||||
|
%patch18 -p1
|
||||||
|
|
||||||
chmod 755 none/tests/s390x/filter_stderr
|
chmod 755 none/tests/s390x/filter_stderr
|
||||||
|
|
||||||
@ -211,6 +215,11 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Jan 28 2011 Jakub Jelinek <jakub@redhat.com> 3.6.0-2
|
||||||
|
- rebuilt against glibc 2.13 (#673046)
|
||||||
|
- hook in pwrite64 syscall on ppc64 (#672858)
|
||||||
|
- fix PIE handling on ppc/ppc64 (#665289)
|
||||||
|
|
||||||
* Fri Nov 12 2010 Jakub Jelinek <jakub@redhat.com> 3.6.0-1
|
* Fri Nov 12 2010 Jakub Jelinek <jakub@redhat.com> 3.6.0-1
|
||||||
- update to 3.6.0
|
- update to 3.6.0
|
||||||
- add s390x support (#632354)
|
- add s390x support (#632354)
|
||||||
|
Loading…
Reference in New Issue
Block a user