diff --git a/SOURCES/rhbz2058908.patch b/SOURCES/rhbz2058908.patch new file mode 100644 index 0000000..fcfbc0e --- /dev/null +++ b/SOURCES/rhbz2058908.patch @@ -0,0 +1,27 @@ +commit aa27023c941f88da383e8f2eeec2a81312243e6e +Author: Frank Ch. Eigler +Date: Fri Mar 11 10:29:55 2022 -0500 + + sys/sdt.h: set x86-64 STAP_SDT_ASM_CONSTRAINT back to "nor" + + It turns out the kernel and some other sdt consumers haven't learned + how to use %xmm registers in sdt operands. So under this duress, stap + will go back to the old school integer register set "nor" as a + default. We'll revisit this in the future, though this egg might not + turn into a chicken. + + https://bugzilla.redhat.com/show_bug.cgi?id=2058908 + +diff --git a/includes/sys/sdt.h b/includes/sys/sdt.h +index 48cb7263f..ca0162b4d 100644 +--- a/includes/sys/sdt.h ++++ b/includes/sys/sdt.h +@@ -100,8 +100,6 @@ + # ifndef STAP_SDT_ARG_CONSTRAINT + # if defined __powerpc__ + # define STAP_SDT_ARG_CONSTRAINT nZr +-# elif defined __x86_64__ +-# define STAP_SDT_ARG_CONSTRAINT norx + # else + # define STAP_SDT_ARG_CONSTRAINT nor + # endif diff --git a/SPECS/systemtap.spec b/SPECS/systemtap.spec index c0b1e8f..ac916a1 100644 --- a/SPECS/systemtap.spec +++ b/SPECS/systemtap.spec @@ -118,7 +118,7 @@ m stapdev stapdev Name: systemtap Version: 4.6 -Release: 11%{?release_override}%{?dist} +Release: 12%{?release_override}%{?dist} # for version, see also configure.ac @@ -161,6 +161,7 @@ Patch4: rhbz2041526.patch Patch5: rhbz2027683.patch Patch6: rhbz2047256.patch Patch7: rhbz2039207.patch +Patch8: rhbz2058908.patch # Build* BuildRequires: make @@ -589,6 +590,7 @@ systemtap-runtime-virthost machine to execute systemtap scripts. %patch5 -p1 %patch6 -p1 %patch7 -p1 +%patch8 -p1 %build @@ -1285,6 +1287,9 @@ exit 0 # PRERELEASE %changelog +* Fri Mar 11 2022 Frank Ch. Eigler - 4.6-12 +- rhbz2058908: Change sys/sdt.h on x86-64 to stop allowing xmm registers + * Wed Feb 2 2022 Stan Cox - 4.6-11 - rhbz2039207: Attempt userspace string access if kernel access fails