- Fix a minor test race of the hardware watchpoints after the fork call.
This commit is contained in:
parent
ed268f2814
commit
e923707749
@ -18,6 +18,11 @@ http://sourceware.org/ml/gdb-patches/2008-01/msg00042.html
|
||||
|
||||
Port to GDB-6.8pre.
|
||||
|
||||
2008-03-31 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
* gdb.threads/watchpoint-fork-forkoff.c (forkoff): New delay after the
|
||||
parent/child messages to fix a race.
|
||||
|
||||
Index: gdb-6.7.50.20080227/gdb/amd64-linux-nat.c
|
||||
===================================================================
|
||||
--- gdb-6.7.50.20080227.orig/gdb/amd64-linux-nat.c 2008-03-01 10:38:02.000000000 +0100
|
||||
@ -698,11 +703,9 @@ Index: gdb-6.7.50.20080227/gdb/s390-nat.c
|
||||
/* Register the target. */
|
||||
linux_nat_add_target (t);
|
||||
linux_nat_set_new_thread (t, s390_fix_watch_points);
|
||||
Index: gdb-6.7.50.20080227/gdb/testsuite/gdb.threads/watchpoint-fork-forkoff.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.7.50.20080227/gdb/testsuite/gdb.threads/watchpoint-fork-forkoff.c 2008-03-01 15:18:13.000000000 +0100
|
||||
@@ -0,0 +1,160 @@
|
||||
--- /dev/null 2008-03-30 17:41:11.547000906 -0400
|
||||
+++ gdb-6.8-patched/gdb/testsuite/gdb.threads/watchpoint-fork-forkoff.c 2008-03-30 18:09:25.000000000 -0400
|
||||
@@ -0,0 +1,172 @@
|
||||
+/* Test case for forgotten hw-watchpoints after fork()-off of a process.
|
||||
+
|
||||
+ Copyright 2008
|
||||
@ -740,7 +743,7 @@ Index: gdb-6.7.50.20080227/gdb/testsuite/gdb.threads/watchpoint-fork-forkoff.c
|
||||
+{
|
||||
+ pid_t child, pid_got;
|
||||
+ int exit_code = 42 + nr;
|
||||
+ int status;
|
||||
+ int status, i;
|
||||
+
|
||||
+ child = fork ();
|
||||
+ switch (child)
|
||||
@ -749,6 +752,13 @@ Index: gdb-6.7.50.20080227/gdb/testsuite/gdb.threads/watchpoint-fork-forkoff.c
|
||||
+ assert (0);
|
||||
+ case 0:
|
||||
+ printf ("child%d: %d\n", nr, (int) getpid ());
|
||||
+ /* Delay to get both the "child%d" and "parent%d" message printed without
|
||||
+ a race breaking expect by its endless wait on `$gdb_prompt$':
|
||||
+ Breakpoint 3, breakpoint () at ../../../gdb/testsuite/gdb.threads/watchpoint-fork.c:33
|
||||
+ 33 }
|
||||
+ (gdb) parent2: 14223 */
|
||||
+ i = sleep (1);
|
||||
+ assert (i == 0);
|
||||
+
|
||||
+ /* We must not get caught here (against a forgotten breakpoint). */
|
||||
+ var++;
|
||||
@ -757,6 +767,11 @@ Index: gdb-6.7.50.20080227/gdb/testsuite/gdb.threads/watchpoint-fork-forkoff.c
|
||||
+ _exit (exit_code);
|
||||
+ default:
|
||||
+ printf ("parent%d: %d\n", nr, (int) child);
|
||||
+ /* Delay to get both the "child%d" and "parent%d" message printed, see
|
||||
+ above. */
|
||||
+ i = sleep (1);
|
||||
+ assert (i == 0);
|
||||
+
|
||||
+ pid_got = wait (&status);
|
||||
+ assert (pid_got == child);
|
||||
+ assert (WIFEXITED (status));
|
||||
|
1
gdb.spec
1
gdb.spec
@ -758,6 +758,7 @@ fi
|
||||
- New test of hiding unexpected breakpoints on intentional step commands.
|
||||
- New test of GCORE for shmid 0 shared memory mappings.
|
||||
- New test of a crash on `focus cmd', `focus prev' commands.
|
||||
- Fix a minor test race of the hardware watchpoints after the fork call.
|
||||
|
||||
* Fri Mar 28 2008 Jan Kratochvil <jan.kratochvil@redhat.com> - 6.8-1
|
||||
- Upgrade to the latest upstream final release gdb-6.8.
|
||||
|
Loading…
Reference in New Issue
Block a user