From ea475c4d66c45da1e68b47f1d4c090a7fd2fd9d1 Mon Sep 17 00:00:00 2001 From: Paul Floyd Date: Sat, 12 Oct 2024 13:18:41 +0200 Subject: [PATCH] FreeBSD regtest: add missing helgrind expecteds --- helgrind/tests/tc04_free_lock.stderr.exp-freebsd15 | 3 + .../tests/tc09_bad_unlock.stderr.exp-freebsd15 | 145 +++++++++++++++++++++ .../tests/tc22_exit_w_lock.stderr.exp-freebsd15 | 7 + 3 files changed, 155 insertions(+) create mode 100644 helgrind/tests/tc04_free_lock.stderr.exp-freebsd15 create mode 100644 helgrind/tests/tc09_bad_unlock.stderr.exp-freebsd15 create mode 100644 helgrind/tests/tc22_exit_w_lock.stderr.exp-freebsd15 diff --git a/helgrind/tests/tc04_free_lock.stderr.exp-freebsd15 b/helgrind/tests/tc04_free_lock.stderr.exp-freebsd15 new file mode 100644 index 000000000..d18786f80 --- /dev/null +++ b/helgrind/tests/tc04_free_lock.stderr.exp-freebsd15 @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) diff --git a/helgrind/tests/tc09_bad_unlock.stderr.exp-freebsd15 b/helgrind/tests/tc09_bad_unlock.stderr.exp-freebsd15 new file mode 100644 index 000000000..c9d6d3d45 --- /dev/null +++ b/helgrind/tests/tc09_bad_unlock.stderr.exp-freebsd15 @@ -0,0 +1,145 @@ + +---Thread-Announcement------------------------------------------ + +Thread #x is the program's root thread + +---------------------------------------------------------------- + +Thread #x unlocked a not-locked lock at 0x........ + at 0x........: mutex_unlock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:28) + by 0x........: main (tc09_bad_unlock.c:52) + Lock at 0x........ was first observed + at 0x........: pthread_mutex_init (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:24) + by 0x........: main (tc09_bad_unlock.c:52) + Address 0x........ is on thread #x's stack + in frame #x, created by nearly_main (tc09_bad_unlock.c:17) + + +---------------------------------------------------------------- + +Thread #x's call to pthread_mutex_unlock failed + with error code 1 (EPERM: Operation not permitted) + at 0x........: mutex_unlock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:28) + by 0x........: main (tc09_bad_unlock.c:52) + +---Thread-Announcement------------------------------------------ + +Thread #x was created + ... + by 0x........: pthread_create@* (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:36) + by 0x........: main (tc09_bad_unlock.c:52) + +---------------------------------------------------------------- + +Thread #x unlocked lock at 0x........ currently held by thread #x + at 0x........: mutex_unlock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: child_fn (tc09_bad_unlock.c:12) + by 0x........: mythread_wrapper (hg_intercepts.c:...) + ... + Lock at 0x........ was first observed + at 0x........: pthread_mutex_init (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:32) + by 0x........: main (tc09_bad_unlock.c:52) + Address 0x........ is on thread #x's stack + in frame #x, created by nearly_main (tc09_bad_unlock.c:17) + + +---------------------------------------------------------------- + +Thread #x's call to pthread_mutex_unlock failed + with error code 1 (EPERM: Operation not permitted) + at 0x........: mutex_unlock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: child_fn (tc09_bad_unlock.c:12) + by 0x........: mythread_wrapper (hg_intercepts.c:...) + ... + +--------------------- +---------------------------------------------------------------- + +Thread #x unlocked a not-locked lock at 0x........ + at 0x........: mutex_unlock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:28) + by 0x........: main (tc09_bad_unlock.c:53) + Lock at 0x........ was first observed + at 0x........: pthread_mutex_init (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:24) + by 0x........: main (tc09_bad_unlock.c:52) + Address 0x........ is on thread #x's stack + in frame #x, created by nearly_main (tc09_bad_unlock.c:17) + + +---------------------------------------------------------------- + +Thread #x's call to pthread_mutex_unlock failed + with error code 1 (EPERM: Operation not permitted) + at 0x........: mutex_unlock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:28) + by 0x........: main (tc09_bad_unlock.c:53) + +---------------------------------------------------------------- + +Thread #x: Attempt to re-lock a non-recursive lock I already hold + at 0x........: mutex_lock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_lock (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:33) + by 0x........: main (tc09_bad_unlock.c:53) + Lock was previously acquired + at 0x........: mutex_lock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_lock (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:33) + by 0x........: main (tc09_bad_unlock.c:52) + +---------------------------------------------------------------- + +Thread #x: Bug in libpthread: recursive write lock granted on mutex/wrlock which does not support recursion + at 0x........: mutex_lock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_lock (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:33) + by 0x........: main (tc09_bad_unlock.c:53) + +---Thread-Announcement------------------------------------------ + +Thread #x was created + ... + by 0x........: pthread_create@* (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:36) + by 0x........: main (tc09_bad_unlock.c:53) + +---------------------------------------------------------------- + +Thread #x unlocked lock at 0x........ currently held by thread #x + at 0x........: mutex_unlock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: child_fn (tc09_bad_unlock.c:12) + by 0x........: mythread_wrapper (hg_intercepts.c:...) + ... + Lock at 0x........ was first observed + at 0x........: pthread_mutex_init (hg_intercepts.c:...) + by 0x........: nearly_main (tc09_bad_unlock.c:32) + by 0x........: main (tc09_bad_unlock.c:52) + Address 0x........ is on thread #x's stack + in frame #x, created by nearly_main (tc09_bad_unlock.c:17) + + +---------------------------------------------------------------- + +Thread #x's call to pthread_mutex_unlock failed + with error code 1 (EPERM: Operation not permitted) + at 0x........: mutex_unlock_WRK (hg_intercepts.c:...) + by 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: child_fn (tc09_bad_unlock.c:12) + by 0x........: mythread_wrapper (hg_intercepts.c:...) + ... + + +ERROR SUMMARY: 10 errors from 10 contexts (suppressed: 0 from 0) diff --git a/helgrind/tests/tc22_exit_w_lock.stderr.exp-freebsd15 b/helgrind/tests/tc22_exit_w_lock.stderr.exp-freebsd15 new file mode 100644 index 000000000..591920098 --- /dev/null +++ b/helgrind/tests/tc22_exit_w_lock.stderr.exp-freebsd15 @@ -0,0 +1,7 @@ + + +Process terminating with default action of signal 6 (SIGABRT) + ... + by 0x........: main (tc22_exit_w_lock.c:48) + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) -- 2.11.4.GIT