]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Added pth_process_shared_mutex regression test.
authorBart Van Assche <bvanassche@acm.org>
Fri, 13 Mar 2009 17:32:07 +0000 (17:32 +0000)
committerBart Van Assche <bvanassche@acm.org>
Fri, 13 Mar 2009 17:32:07 +0000 (17:32 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9398

drd/tests/Makefile.am
drd/tests/pth_process_shared_mutex.c [new file with mode: 0644]
drd/tests/pth_process_shared_mutex.stderr.exp [new file with mode: 0644]
drd/tests/pth_process_shared_mutex.vgtest [new file with mode: 0644]

index ca61cdecd94b3b9c0f3cdc23f23ac5e45a1d82f5..b612b806079b744d8faaca1702e380883de825aa 100644 (file)
@@ -110,6 +110,8 @@ EXTRA_DIST =                                        \
        pth_inconsistent_cond_wait.stderr.exp1      \
        pth_inconsistent_cond_wait.stderr.exp2      \
        pth_inconsistent_cond_wait.vgtest           \
+       pth_process_shared_mutex.vgtest             \
+       pth_process_shared_mutex.c                  \
        pth_spinlock.stderr.exp                     \
        pth_spinlock.vgtest                         \
        qt4_mutex.stderr.exp                        \
@@ -211,6 +213,7 @@ check_PROGRAMS =      \
   pth_create_chain    \
   pth_detached        \
   pth_detached_sem    \
+  pth_process_shared_mutex   \
   pth_inconsistent_cond_wait \
   recursive_mutex     \
   rwlock_race         \
diff --git a/drd/tests/pth_process_shared_mutex.c b/drd/tests/pth_process_shared_mutex.c
new file mode 100644 (file)
index 0000000..1344761
--- /dev/null
@@ -0,0 +1,30 @@
+/*
+ * Test program that locks and unlocks a process-shared mutex.
+ * See also https://bugs.kde.org/show_bug.cgi?id=187048.
+ */
+
+
+#define _GNU_SOURCE
+
+#include <stdio.h>
+#include <pthread.h>
+
+
+int main()
+{
+  pthread_mutex_t mutex;
+  pthread_mutexattr_t attr;
+
+  pthread_mutexattr_init(&attr);
+  pthread_mutexattr_setpshared(&attr, PTHREAD_PROCESS_SHARED);
+  pthread_mutex_init(&mutex, &attr);
+  pthread_mutexattr_destroy(&attr);
+
+  pthread_mutex_lock(&mutex);
+  pthread_mutex_unlock(&mutex);
+  pthread_mutex_destroy(&mutex);
+
+  fprintf(stderr, "Finished.\n");
+
+  return 0;
+}
diff --git a/drd/tests/pth_process_shared_mutex.stderr.exp b/drd/tests/pth_process_shared_mutex.stderr.exp
new file mode 100644 (file)
index 0000000..a7089bb
--- /dev/null
@@ -0,0 +1,4 @@
+
+Finished.
+
+ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
diff --git a/drd/tests/pth_process_shared_mutex.vgtest b/drd/tests/pth_process_shared_mutex.vgtest
new file mode 100644 (file)
index 0000000..df99168
--- /dev/null
@@ -0,0 +1,3 @@
+prereq: ./supported_libpthread
+prog: pth_process_shared_mutex
+vgopts: --var-info=yes --check-stack-var=yes