public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/gdb] gdb-17.2-rebase-f44: Remove gdb-6.6-bz237572-ppc-atomic-sequence-test.patch
@ 2026-06-28  0:02 Keith Seitz
  0 siblings, 0 replies; only message in thread
From: Keith Seitz @ 2026-06-28  0:02 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/gdb
            Branch : gdb-17.2-rebase-f44
            Commit : 5506bde410beae59b56479005d9f39299004dd94
            Author : Keith Seitz <keiths@redhat.com>
            Date   : 2025-02-27T10:22:51-08:00
            Stats  : +15/-295 in 5 file(s)
            URL    : https://src.fedoraproject.org/rpms/gdb/c/5506bde410beae59b56479005d9f39299004dd94?branch=gdb-17.2-rebase-f44

            Log:
            Remove gdb-6.6-bz237572-ppc-atomic-sequence-test.patch

The patch adds tests for stepping over atomic sequences (via gcc
built-ins) on PowerPC. These tests have not compiled since gcc-4.4
which last shipped on RHEL5.

Since the original patch was written, upstream have accepted a
more reduced version of the tests relying specifically on the
architecture's atomic insns. See gdb.arch/ppc64-isa207-atomic-inst.exp.

---
diff --git a/_gdb.spec.Patch.include b/_gdb.spec.Patch.include
index f20f7a5..0c36445 100644
--- a/_gdb.spec.Patch.include
+++ b/_gdb.spec.Patch.include
@@ -1,39 +1,35 @@
 # Check distro name is included in the version output.
 Patch001: gdb-6.3-rh-testversion-20041202.patch
 
-# Support for stepping over PPC atomic instruction sequences (BZ 237572).
-#=fedoratest
-Patch002: gdb-6.6-bz237572-ppc-atomic-sequence-test.patch
-
 # Test gcore memory and time requirements for large inferiors.
 #=fedoratest
-Patch003: gdb-6.5-gcore-buffer-limit-test.patch
+Patch002: gdb-6.5-gcore-buffer-limit-test.patch
 
 # Test GCORE for shmid 0 shared memory mappings.
 #=fedoratest: But it is broken anyway, sometimes the case being tested is not reproducible.
-Patch004: gdb-6.3-mapping-zero-inode-test.patch
+Patch003: gdb-6.3-mapping-zero-inode-test.patch
 
 # Fix resolving of variables at locations lists in prelinked libs (BZ 466901).
 #=fedoratest
-Patch005: gdb-6.8-bz466901-backtrace-full-prelinked.patch
+Patch004: gdb-6.8-bz466901-backtrace-full-prelinked.patch
 
 # Fix follow-exec for C++ programs (bugreported by Martin Stransky).
 #=fedoratest
-Patch006: gdb-archer-next-over-throw-cxx-exec.patch
+Patch005: gdb-archer-next-over-throw-cxx-exec.patch
 
 # Testcase for `Setting solib-absolute-prefix breaks vDSO' (BZ 818343).
 #=fedoratest
-Patch007: gdb-rhbz-818343-set-solib-absolute-prefix-testcase.patch
+Patch006: gdb-rhbz-818343-set-solib-absolute-prefix-testcase.patch
 
 # Fix '`catch syscall' doesn't work for parent after `fork' is called'
 # (Philippe Waroquiers, RH BZ 1149205).
 #=fedoratest
-Patch008: gdb-rhbz1149205-catch-syscall-after-fork-test.patch
+Patch007: gdb-rhbz1149205-catch-syscall-after-fork-test.patch
 
 # Fix '[ppc64] and [s390x] wrong prologue skip on -O2 -g code' (Jan
 # Kratochvil, RH BZ 1084404).
 #=fedoratest
-Patch009: gdb-rhbz1084404-ppc64-s390x-wrong-prologue-skip-O2-g-3of3.patch
+Patch008: gdb-rhbz1084404-ppc64-s390x-wrong-prologue-skip-O2-g-3of3.patch
 
 # Update gdb-add-index.sh such that, when the GDB environment
 # variable is not set, the script is smarter than just looking for
@@ -47,19 +43,19 @@ Patch009: gdb-rhbz1084404-ppc64-s390x-wrong-prologue-skip-O2-g-3of3.patch
 #   https://fedoraproject.org/wiki/Changes/Minimal_GDB_in_buildroot
 #
 #=fedora
-Patch010: gdb-add-index.patch
+Patch009: gdb-add-index.patch
 
 # Not a backport.  Add a new script which hooks into GDB and suggests
 # RPMs to install when GDB finds an objfile with no debug info.
-Patch011: gdb-add-rpm-suggestion-script.patch
+Patch010: gdb-add-rpm-suggestion-script.patch
 
 # Backport upstream commit 2fc56106422 which fixes a possible
 # segfault when opening a core file.  This will drop out when we
 # rebase to 16.3 or 17.1
-Patch012: core-target-open-segfault.patch
+Patch011: core-target-open-segfault.patch
 
 # Backport upstream commit 2b646bb8767, this fixes an issue where
 # TUI output was not flushed to the screen in some cases.  This will
 # drop out when we rebase on 16.3 or 17.1.
-Patch013: tui-wrefresh-issue.patch
+Patch012: tui-wrefresh-issue.patch
 

diff --git a/_gdb.spec.patch.include b/_gdb.spec.patch.include
index cb13330..dad4d0a 100644
--- a/_gdb.spec.patch.include
+++ b/_gdb.spec.patch.include
@@ -10,4 +10,3 @@
 %patch -p1 -P010
 %patch -p1 -P011
 %patch -p1 -P012
-%patch -p1 -P013

diff --git a/_patch_order b/_patch_order
index 1367ac0..4e83db8 100644
--- a/_patch_order
+++ b/_patch_order
@@ -1,5 +1,4 @@
 gdb-6.3-rh-testversion-20041202.patch
-gdb-6.6-bz237572-ppc-atomic-sequence-test.patch
 gdb-6.5-gcore-buffer-limit-test.patch
 gdb-6.3-mapping-zero-inode-test.patch
 gdb-6.8-bz466901-backtrace-full-prelinked.patch

diff --git a/gdb-6.6-bz237572-ppc-atomic-sequence-test.patch b/gdb-6.6-bz237572-ppc-atomic-sequence-test.patch
deleted file mode 100644
index 4faef13..0000000
--- a/gdb-6.6-bz237572-ppc-atomic-sequence-test.patch
+++ /dev/null
@@ -1,278 +0,0 @@
-From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
-From: Jan Kratochvil <jan.kratochvil@redhat.com>
-Date: Fri, 27 Oct 2017 21:07:50 +0200
-Subject: gdb-6.6-bz237572-ppc-atomic-sequence-test.patch
-
-;; Support for stepping over PPC atomic instruction sequences (BZ 237572).
-;;=fedoratest
-
-2007-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
-
-	* gdb.threads/atomic-seq-threaded.c,
-	gdb.threads/atomic-seq-threaded.exp: New files.
-
-diff --git a/gdb/testsuite/gdb.threads/atomic-seq-threaded.c b/gdb/testsuite/gdb.threads/atomic-seq-threaded.c
-new file mode 100644
---- /dev/null
-+++ b/gdb/testsuite/gdb.threads/atomic-seq-threaded.c
-@@ -0,0 +1,171 @@
-+/* This testcase is part of GDB, the GNU debugger.
-+
-+   Copyright 2007 Free Software Foundation, Inc.
-+
-+   This program is free software; you can redistribute it and/or modify
-+   it under the terms of the GNU General Public License as published by
-+   the Free Software Foundation; either version 2 of the License, or
-+   (at your option) any later version.
-+
-+   This program is distributed in the hope that it will be useful,
-+   but WITHOUT ANY WARRANTY; without even the implied warranty of
-+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+   GNU General Public License for more details.
-+
-+   You should have received a copy of the GNU General Public License
-+   along with this program; if not, write to the Free Software
-+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
-+   MA 02110-1301, USA.  */
-+
-+/* Test stepping over RISC atomic sequences.
-+   This variant testcases the code for stepping another thread while skipping
-+   over the atomic sequence in the former thread
-+   (STEPPING_PAST_SINGLESTEP_BREAKPOINT).
-+   Code comes from gcc/testsuite/gcc.dg/sync-2.c  */
-+
-+/* { dg-options "-march=i486" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
-+/* { dg-options "-mcpu=v9" { target sparc*-*-* } } */
-+
-+/* Test functionality of the intrinsics for 'short' and 'char'.  */
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <pthread.h>
-+#include <assert.h>
-+#include <unistd.h>
-+
-+#define LOOPS 2
-+
-+static int unused;
-+
-+static char AI[18];
-+static char init_qi[18] = { 3,5,7,9,0,0,0,0,-1,0,0,0,0,0,-1,0,0,0 };
-+static char test_qi[18] = { 3,5,7,9,1,4,22,-12,7,8,9,7,1,-12,7,8,9,7 };
-+
-+static void
-+do_qi (void)
-+{
-+  if (__sync_fetch_and_add(AI+4, 1) != 0)
-+    abort ();
-+  if (__sync_fetch_and_add(AI+5, 4) != 0)
-+    abort ();
-+  if (__sync_fetch_and_add(AI+6, 22) != 0)
-+    abort ();
-+  if (__sync_fetch_and_sub(AI+7, 12) != 0)
-+    abort ();
-+  if (__sync_fetch_and_and(AI+8, 7) != (char)-1)
-+    abort ();
-+  if (__sync_fetch_and_or(AI+9, 8) != 0)
-+    abort ();
-+  if (__sync_fetch_and_xor(AI+10, 9) != 0)
-+    abort ();
-+  if (__sync_fetch_and_nand(AI+11, 7) != 0)
-+    abort ();
-+
-+  if (__sync_add_and_fetch(AI+12, 1) != 1)
-+    abort ();
-+  if (__sync_sub_and_fetch(AI+13, 12) != (char)-12)
-+    abort ();
-+  if (__sync_and_and_fetch(AI+14, 7) != 7)
-+    abort ();
-+  if (__sync_or_and_fetch(AI+15, 8) != 8)
-+    abort ();
-+  if (__sync_xor_and_fetch(AI+16, 9) != 9)
-+    abort ();
-+  if (__sync_nand_and_fetch(AI+17, 7) != 7)
-+    abort ();
-+}
-+
-+static short AL[18];
-+static short init_hi[18] = { 3,5,7,9,0,0,0,0,-1,0,0,0,0,0,-1,0,0,0 };
-+static short test_hi[18] = { 3,5,7,9,1,4,22,-12,7,8,9,7,1,-12,7,8,9,7 };
-+
-+static void
-+do_hi (void)
-+{
-+  if (__sync_fetch_and_add(AL+4, 1) != 0)
-+    abort ();
-+  if (__sync_fetch_and_add(AL+5, 4) != 0)
-+    abort ();
-+  if (__sync_fetch_and_add(AL+6, 22) != 0)
-+    abort ();
-+  if (__sync_fetch_and_sub(AL+7, 12) != 0)
-+    abort ();
-+  if (__sync_fetch_and_and(AL+8, 7) != -1)
-+    abort ();
-+  if (__sync_fetch_and_or(AL+9, 8) != 0)
-+    abort ();
-+  if (__sync_fetch_and_xor(AL+10, 9) != 0)
-+    abort ();
-+  if (__sync_fetch_and_nand(AL+11, 7) != 0)
-+    abort ();
-+
-+  if (__sync_add_and_fetch(AL+12, 1) != 1)
-+    abort ();
-+  if (__sync_sub_and_fetch(AL+13, 12) != -12)
-+    abort ();
-+  if (__sync_and_and_fetch(AL+14, 7) != 7)
-+    abort ();
-+  if (__sync_or_and_fetch(AL+15, 8) != 8)
-+    abort ();
-+  if (__sync_xor_and_fetch(AL+16, 9) != 9)
-+    abort ();
-+  if (__sync_nand_and_fetch(AL+17, 7) != 7)
-+    abort ();
-+}
-+
-+static void *
-+start1 (void *arg)
-+{
-+  unsigned loop;
-+  sleep(1);
-+
-+  for (loop = 0; loop < LOOPS; loop++)
-+    {
-+      memcpy(AI, init_qi, sizeof(init_qi));
-+
-+      do_qi ();
-+
-+      if (memcmp (AI, test_qi, sizeof(test_qi)))
-+	abort ();
-+    }
-+
-+  return arg;						/* _delete1_ */
-+}
-+
-+static void *
-+start2 (void *arg)
-+{
-+  unsigned loop;
-+
-+  for (loop = 0; loop < LOOPS; loop++)
-+    {
-+      memcpy(AL, init_hi, sizeof(init_hi));
-+
-+      do_hi ();
-+
-+      if (memcmp (AL, test_hi, sizeof(test_hi)))
-+	abort ();
-+    }
-+
-+  return arg;						/* _delete2_ */
-+}
-+
-+int
-+main (int argc, char **argv)
-+{
-+  pthread_t thread;
-+  int i;
-+
-+  i = pthread_create (&thread, NULL, start1, NULL);	/* _create_ */
-+  assert (i == 0);					/* _create_after_ */
-+
-+  sleep (1);
-+
-+  start2 (NULL);
-+
-+  i = pthread_join (thread, NULL);			/* _delete_ */
-+  assert (i == 0);
-+
-+  return 0;						/* _exit_ */
-+}
-diff --git a/gdb/testsuite/gdb.threads/atomic-seq-threaded.exp b/gdb/testsuite/gdb.threads/atomic-seq-threaded.exp
-new file mode 100644
---- /dev/null
-+++ b/gdb/testsuite/gdb.threads/atomic-seq-threaded.exp
-@@ -0,0 +1,84 @@
-+# atomic-seq-threaded.exp -- Test case for stepping over RISC atomic code seqs.
-+# This variant testcases the code for stepping another thread while skipping
-+# over the atomic sequence in the former thread
-+# (STEPPING_PAST_SINGLESTEP_BREAKPOINT).
-+# Copyright (C) 2007 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
-+
-+# Please email any bugs, comments, and/or additions to this file to:
-+# bug-gdb@prep.ai.mit.edu
-+
-+set testfile atomic-seq-threaded
-+set srcfile ${testfile}.c
-+set binfile [standard_output_file ${testfile}]
-+
-+foreach opts {{} {compiler=gcc4} {FAIL}} {
-+    if {$opts eq "FAIL"} {
-+	return -1
-+    }
-+    if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable [list debug $opts]] eq "" } {
-+	break
-+    }
-+}
-+
-+gdb_exit
-+gdb_start
-+gdb_reinitialize_dir $srcdir/$subdir
-+
-+gdb_load ${binfile}
-+if ![runto_main] then {
-+   fail "Can't run to main"
-+   return 0
-+}
-+
-+# pthread_create () will not pass even on x86_64 with software watchpoint.
-+# Pass after pthread_create () without any watchpoint active.
-+set line [gdb_get_line_number "_create_after_"]
-+gdb_test "tbreak $line" \
-+	 "reakpoint (\[0-9\]+) at .*$srcfile, line $line\..*" \
-+	 "set breakpoint after pthread_create ()"
-+gdb_test "c" \
-+	 ".*/\\* _create_after_ \\*/.*" \
-+	 "run till after pthread_create ()"
-+
-+# Without a watchpoint being software no single-stepping would be used.
-+set test "Start (software) watchpoint"
-+gdb_test_multiple "watch unused" $test {
-+    -re "Watchpoint \[0-9\]+: unused.*$gdb_prompt $" {
-+	pass $test
-+    }
-+    -re "Hardware watchpoint \[0-9\]+: unused.*$gdb_prompt $" {
-+	# We do not test the goal but still the whole testcase should pass.
-+	unsupported $test
-+    }
-+}
-+
-+# More thorough testing of the scheduling logic.
-+gdb_test "set scheduler-locking step" ""
-+
-+# Critical code path is stepped through at this point.
-+set line [gdb_get_line_number "_exit_"]
-+gdb_test "tbreak $line" \
-+	 "reakpoint \[0-9\]+ at .*$srcfile, line $line\..*" \
-+	 "set breakpoint at _exit_"
-+gdb_test "c" \
-+	 ".*/\\* _exit_ \\*/.*" \
-+	 "run till _exit_"
-+
-+# Just a nonproblematic program exit.
-+gdb_test "c" \
-+	 ".*Program exited normally\\..*" \
-+	 "run till program exit"

diff --git a/gdb.spec b/gdb.spec
index 4d7f6dd..ce947d0 100644
--- a/gdb.spec
+++ b/gdb.spec
@@ -923,6 +923,10 @@ fi
 # endif scl
 
 %changelog
+* Thu Feb 27 2025 Keith Seitz <keiths@redhat.com>
+- Remove gdb-6.6-bz237572-ppc-atomic-sequence-test.patch. This is covered
+  by gdb.arch/ppc64-isa207-atomic-inst.exp.
+
 * Mon Feb 10 2025 Andrew Burgess <aburgess@redhat.com>
 - Add core-target-open-segfault.patch and tui-wrefresh-issue.patch,
   these backport upstream commits 2fc56106422 and 2b646bb8767

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-06-28  0:02 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-28  0:02 [rpms/gdb] gdb-17.2-rebase-f44: Remove gdb-6.6-bz237572-ppc-atomic-sequence-test.patch Keith Seitz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox