diff --git a/valgrind-3.14.0-s390x-vec-facility-bit.patch b/valgrind-3.14.0-s390x-vec-facility-bit.patch new file mode 100644 index 0000000..c00ed62 --- /dev/null +++ b/valgrind-3.14.0-s390x-vec-facility-bit.patch @@ -0,0 +1,32 @@ +commit 467c7c4c9665c0f8b41a4416722a027ebc05df2b +Author: Andreas Arnez +Date: Mon Jan 21 14:10:00 2019 +0100 + + Bug 403552 s390x: Fix vector facility bit number + + The wrong bit number was used when checking for the vector facility. This + can result in a fatal emulation error: "Encountered an instruction that + requires the vector facility. That facility is not available on this + host." + + In many cases the wrong facility bit was usually set as well, hence + nothing bad happened. But when running Valgrind within a Qemu/KVM guest, + the wrong bit was not (always?) set and the emulation error occurred. + + This fix simply corrects the vector facility bit number, changing it from + 128 to 129. + + +diff --git a/VEX/pub/libvex_s390x_common.h b/VEX/pub/libvex_s390x_common.h +index a8a66b96b..8723ee21d 100644 +--- a/VEX/pub/libvex_s390x_common.h ++++ b/VEX/pub/libvex_s390x_common.h +@@ -103,7 +103,7 @@ + #define S390_FAC_MSA5 57 // message-security-assist 5 + #define S390_FAC_TREXE 73 // transactional execution + #define S390_FAC_MSA4 77 // message-security-assist 4 +-#define S390_FAC_VX 128 // vector facility ++#define S390_FAC_VX 129 // vector facility + + + /*--------------------------------------------------------------*/ diff --git a/valgrind.spec b/valgrind.spec index f150d1c..4064516 100644 --- a/valgrind.spec +++ b/valgrind.spec @@ -3,7 +3,7 @@ Summary: Tool for finding memory management bugs in programs Name: %{?scl_prefix}valgrind Version: 3.14.0 -Release: 10%{?dist} +Release: 11%{?dist} Epoch: 1 License: GPLv2+ URL: http://www.valgrind.org/ @@ -173,6 +173,9 @@ Patch34: valgrind-3.14.0-rsp-clobber.patch # commit 3528f8 Accept DW_TAG_subrange_type with DW_AT_count Patch35: valgrind-3.14.0-subrange_type-count.patch +# KDE#403552 s390x: wrong facility bit checked for vector facility +Patch36: valgrind-3.14.0-s390x-vec-facility-bit.patch + %if %{build_multilib} # Ensure glibc{,-devel} is installed for both multilib arches @@ -341,6 +344,7 @@ Valgrind User Manual for details. %patch33 -p1 %patch34 -p1 %patch35 -p1 +%patch36 -p1 %build CC=gcc @@ -575,6 +579,9 @@ fi %endif %changelog +* Thu Jan 24 2019 Mark Wielaard - 3.14.0-11 +- Add valgrind-3.14.0-s390x-vec-facility-bit.patch. + * Wed Jan 9 2019 Mark Wielaard - 3.14.0-10 - Add valgrind-3.14.0-rsp-clobber.patch - Add valgrind-3.14.0-subrange_type-count.patch