Merged update from upstream sources
This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/valgrind.git#66d2557fe5079f591d6a0d16de66acab6a152662
This commit is contained in:
parent
f2d4cd32d8
commit
30d479766f
57
valgrind-3.16.1-ppc64-scv-hwcap.patch
Normal file
57
valgrind-3.16.1-ppc64-scv-hwcap.patch
Normal file
@ -0,0 +1,57 @@
|
||||
From a88c168b4dd607bca47d3a1ec08573d3e5fa889b Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Fri, 8 Jan 2021 15:08:50 +0100
|
||||
Subject: [PATCH] ppc64: Mask unrecognized AT_HWCAP2 values
|
||||
|
||||
Also suppress printing a log message for scv instructions in the
|
||||
instruction stream.
|
||||
|
||||
These changes are required for running glibc 2.33 on kernels with scv
|
||||
support under valgrind.
|
||||
---
|
||||
VEX/priv/guest_ppc_toIR.c | 5 +++--
|
||||
coregrind/m_initimg/initimg-linux.c | 6 ++++++
|
||||
2 files changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/VEX/priv/guest_ppc_toIR.c b/VEX/priv/guest_ppc_toIR.c
|
||||
index e7b576fa2..99e96a577 100644
|
||||
--- a/VEX/priv/guest_ppc_toIR.c
|
||||
+++ b/VEX/priv/guest_ppc_toIR.c
|
||||
@@ -8739,8 +8739,9 @@
|
||||
{
|
||||
IRType ty = mode64 ? Ity_I64 : Ity_I32;
|
||||
|
||||
- if (theInstr != 0x44000002) {
|
||||
- vex_printf("dis_syslink(ppc)(theInstr)\n");
|
||||
+ if (theInstr != 0x44000002) { // sc
|
||||
+ if (theInstr != 0x44000001) // scv
|
||||
+ vex_printf("dis_syslink(ppc)(theInstr)\n");
|
||||
return False;
|
||||
}
|
||||
|
||||
diff --git a/coregrind/m_initimg/initimg-linux.c b/coregrind/m_initimg/initimg-linux.c
|
||||
index ba84fa6e9..fb68ae00b 100644
|
||||
--- a/coregrind/m_initimg/initimg-linux.c
|
||||
+++ b/coregrind/m_initimg/initimg-linux.c
|
||||
@@ -750,6 +750,7 @@ Addr setup_client_stack( void* init_sp,
|
||||
PPC_FEATURE2_HAS_ISEL 0x08000000
|
||||
PPC_FEATURE2_HAS_TAR 0x04000000
|
||||
PPC_FEATURE2_HAS_VCRYPTO 0x02000000
|
||||
+ PPC_FEATURE2_HAS_IEEE128 0x00400000
|
||||
*/
|
||||
auxv_2_07 = (auxv->u.a_val & 0x80000000ULL) == 0x80000000ULL;
|
||||
hw_caps_2_07 = (vex_archinfo->hwcaps & VEX_HWCAPS_PPC64_ISA2_07)
|
||||
@@ -757,6 +757,11 @@
|
||||
* matches the setting in VEX HWCAPS.
|
||||
*/
|
||||
vg_assert(auxv_2_07 == hw_caps_2_07);
|
||||
+
|
||||
+ /* Mask unrecognized HWCAP bits. Only keep the bits that have
|
||||
+ * been mentioned above.
|
||||
+ */
|
||||
+ auxv->u.a_val &= 0xfec00000ULL;
|
||||
}
|
||||
|
||||
break;
|
||||
--- valgrind-3.16.1/VEX/priv/guest_ppc_toIR.c 2021-01-08 16:43:45.947122866 +0100
|
||||
+++ guest_ppc_toIR.c.new 2021-01-08 16:43:40.238166866 +0100
|
@ -3,7 +3,7 @@
|
||||
Summary: Tool for finding memory management bugs in programs
|
||||
Name: %{?scl_prefix}valgrind
|
||||
Version: 3.16.1
|
||||
Release: 12%{?dist}
|
||||
Release: 13%{?dist}
|
||||
Epoch: 1
|
||||
License: GPLv2+
|
||||
URL: http://www.valgrind.org/
|
||||
@ -137,6 +137,9 @@ Patch19: valgrind-3.16.1-ficlone.patch
|
||||
# upstream git commit 359b98828
|
||||
Patch20: valgrind-3.16.1-arm64-expensive-cmp.patch
|
||||
|
||||
# KDE#431157 PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
|
||||
Patch21: valgrind-3.16.1-ppc64-scv-hwcap.patch
|
||||
|
||||
BuildRequires: glibc-devel
|
||||
|
||||
%if %{build_openmpi}
|
||||
@ -285,6 +288,7 @@ Valgrind User Manual for details.
|
||||
%patch18 -p1
|
||||
%patch19 -p1
|
||||
%patch20 -p1
|
||||
%patch21 -p1
|
||||
|
||||
%build
|
||||
# LTO triggers undefined symbols in valgrind. Valgrind has a --enable-lto
|
||||
@ -509,6 +513,9 @@ fi
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Fri Jan 8 2021 Mark Wielaard <mjw@fedoraproject.org> - 3.16.1-13
|
||||
- Add valgrind-3.16.1-ppc64-scv-hwcap.patch
|
||||
|
||||
* Sun Dec 20 2020 Mark Wielaard <mjw@fedoraproject.org> - 3.16.1-12
|
||||
- Add valgrind-3.16.1-ficlone.patch
|
||||
- Add valgrind-3.16.1-arm64-expensive-cmp.patch
|
||||
|
Loading…
Reference in New Issue
Block a user