]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Illumos suppression and regtest
authorPaul Floyd <pjfloyd@wanadoo.fr>
Sun, 20 Apr 2025 20:14:44 +0000 (22:14 +0200)
committerPaul Floyd <pjfloyd@wanadoo.fr>
Sun, 20 Apr 2025 20:14:44 +0000 (22:14 +0200)
Broaden the printf suppression
Add an expected for helgrind/tests/bar_bad

helgrind/tests/Makefile.am
helgrind/tests/bar_bad.stderr.exp-illumos [new file with mode: 0644]
solaris11.supp

index bffd5bf76ae9e178156bef7b37a353f6d8e808b0..7adc5c6021ab472695fc4b1262f058127898343c 100755 (executable)
@@ -33,6 +33,7 @@ EXTRA_DIST = \
        bar_bad.vgtest bar_bad.stdout.exp bar_bad.stderr.exp \
                bar_bad.stderr.exp-destroy-hang \
                bar_bad.stderr.exp-freebsd \
+               bar_bad.stderr.exp-illumos \
        bar_trivial.vgtest bar_trivial.stdout.exp bar_trivial.stderr.exp \
        free_is_write.vgtest free_is_write.stdout.exp \
                free_is_write.stderr.exp \
diff --git a/helgrind/tests/bar_bad.stderr.exp-illumos b/helgrind/tests/bar_bad.stderr.exp-illumos
new file mode 100644 (file)
index 0000000..86bd8fa
--- /dev/null
@@ -0,0 +1,84 @@
+
+initialise a barrier with zero count
+---Thread-Announcement------------------------------------------
+
+Thread #x is the program's root thread
+
+----------------------------------------------------------------
+
+Thread #x: pthread_barrier_init: 'count' argument is zero
+   at 0x........: pthread_barrier_init (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:49)
+
+----------------------------------------------------------------
+
+Thread #x's call to pthread_barrier_init failed
+   with error code 22 (EINVAL: Invalid argument)
+   at 0x........: pthread_barrier_init (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:49)
+
+
+initialise a barrier twice
+----------------------------------------------------------------
+
+Thread #x: pthread_barrier_init: barrier is already initialised
+   at 0x........: pthread_barrier_init (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:55)
+
+
+initialise a barrier which has threads waiting on it
+----------------------------------------------------------------
+
+Thread #x: pthread_barrier_init: barrier is already initialised
+   at 0x........: pthread_barrier_init (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:72)
+
+----------------------------------------------------------------
+
+Thread #x: pthread_barrier_init: threads are waiting at barrier
+   at 0x........: pthread_barrier_init (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:72)
+
+
+destroy a barrier that has waiting threads
+----------------------------------------------------------------
+
+Thread #x: pthread_barrier_destroy: threads are waiting at barrier
+   at 0x........: pthread_barrier_destroy (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:90)
+
+----------------------------------------------------------------
+
+Thread #x: pthread_cond_destroy: destruction of condition variable being waited upon
+   at 0x........: pthread_cond_destroy_WRK (hg_intercepts.c:...)
+   by 0x........: pthread_cond_destroy@* (hg_intercepts.c:...)
+   ...
+   by 0x........: pthread_barrier_destroy (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:90)
+
+
+destroy a barrier that was never initialised
+----------------------------------------------------------------
+
+Thread #x: pthread_barrier_destroy: barrier was never initialised
+   at 0x........: pthread_barrier_destroy (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:107)
+
+----------------------------------------------------------------
+
+Thread #x: pthread_mutex_destroy with invalid argument
+   at 0x........: mutex_destroy_WRK (hg_intercepts.c:...)
+   by 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
+   ...
+   by 0x........: pthread_barrier_destroy (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:107)
+
+----------------------------------------------------------------
+
+Thread #x: pthread_cond_destroy: destruction of unknown cond var
+   at 0x........: pthread_cond_destroy_WRK (hg_intercepts.c:...)
+   by 0x........: pthread_cond_destroy@* (hg_intercepts.c:...)
+   ...
+   by 0x........: pthread_barrier_destroy (hg_intercepts.c:...)
+   by 0x........: main (bar_bad.c:107)
+
index c772df3955c51a410f085cf06dda1654feaeb464..5d51a6a3f70fa0092ad323cb0a00b06baecbabd0 100644 (file)
@@ -66,6 +66,7 @@
 {
    Illumos:printf
    Helgrind:Race
+   ...
    fun:printf
 }
 # conflict between pthread_barrier_init and pthread_barrier_wait