]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
s390: Set min. required machine model to z196. (BZ 509562)
authorFlorian Krohm <flo2030@eich-krohm.de>
Wed, 19 Nov 2025 13:27:51 +0000 (13:27 +0000)
committerFlorian Krohm <flo2030@eich-krohm.de>
Wed, 19 Nov 2025 13:27:51 +0000 (13:27 +0000)
Bail out if machine is too old.

This is the 1st installment of a series of patches raising the min.
required machine model to z196.
Part of fixing https://bugs.kde.org/show_bug.cgi?id=509562

README.s390
coregrind/m_machine.c
coregrind/m_main.c

index d2236d29fa861f28c06cfdf851e2f621bc498c4c..3ff9bc64a16ad9c0e8fbf2e250d80726da20cc27 100644 (file)
@@ -2,9 +2,7 @@
 Requirements
 ------------
 - You need GCC 3.4 or later to compile the s390 port.
-- To run valgrind a z10 machine or any later model is recommended.
-  Older machine models down to and including z990 may work but have
-  not been tested extensively.
+- Valgrind requires a machine not older than z196 to run.
 
 
 Limitations
index 9c19b30ebb6d64e61925183695921d9479193868..1bb6cd120174af979e0cb47fa8098c43aa946d95 100644 (file)
@@ -1541,6 +1541,12 @@ Bool VG_(machine_get_hwcaps)( void )
         identification yet. Keeping fingers crossed. */
      model = VG_(get_machine_model)();
 
+     if (model < VEX_S390X_MODEL_Z196) {
+        VG_(message)(Vg_FailMsg, "Your machine is too old. "
+                     "You need at least a z196 to run valgrind.\n");
+        VG_(exit)(1);
+     }
+
      /* Unblock SIGILL and stash away the old action for that signal */
      VG_(sigemptyset)(&tmp_set);
      VG_(sigaddset)(&tmp_set, VKI_SIGILL);
index e1bfae2b552d88f849e726a6aff67ef2d2e7bec7..ce8a7ae6a3b5d28c6015c547b6ebffc028a4bb54 100644 (file)
@@ -1530,7 +1530,7 @@ Int valgrind_main ( Int argc, HChar **argv, HChar **envp )
         VG_(printf)("   * ARM (armv7)\n");
         VG_(printf)("   * MIPS (mips32 and above; mips64 and above)\n");
         VG_(printf)("   * PowerPC (most; ppc405 and above)\n");
-        VG_(printf)("   * System z (64bit only - s390x; z990 and above)\n");
+        VG_(printf)("   * System z (64bit only - s390x; z196 and above)\n");
         VG_(printf)("\n");
         VG_(exit)(1);
      }