Update.
authorUlrich Drepper <drepper@redhat.com>
Wed, 18 Jun 2003 22:25:33 +0000 (22:25 +0000)
committerUlrich Drepper <drepper@redhat.com>
Wed, 18 Jun 2003 22:25:33 +0000 (22:25 +0000)
* tst-cancel4.c (tf_msgsnd): Don't always use 100 as the type,
find a random value.
(tf_msgrcv): Likewise.  Also don't report msgrcv returns if
errno==EIDRM.

nptl/ChangeLog
nptl/tst-cancel4.c

index 846ebf0..d3221e8 100644 (file)
@@ -1,5 +1,10 @@
 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
 
+       * tst-cancel4.c (tf_msgsnd): Don't always use 100 as the type,
+       find a random value.
+       (tf_msgrcv): Likewise.  Also don't report msgrcv returns if
+       errno==EIDRM.
+
        * sysdeps/unix/sysv/linux/timer_settime.c: Add prototype for
        compat_timer_settime.
        * sysdeps/unix/sysv/linux/timer_gettime.c: Add prototype for
index d729de6..8b0b735 100644 (file)
@@ -1898,7 +1898,17 @@ tf_msgrcv (void *arg)
     long int type;
     char mem[10];
   } m;
-  msgrcv (tempmsg, (struct msgbuf *) &m, 10, 100, 0);
+  int randnr;
+  /* We need a positive random number.  */
+  do
+    randnr = random ();
+  while (randnr <= 0);
+  do
+    {
+      errno = 0;
+      msgrcv (tempmsg, (struct msgbuf *) &m, 10, randnr, 0);
+    }
+  while (errno == EIDRM);
 
   pthread_cleanup_pop (0);
 
@@ -1939,7 +1949,10 @@ tf_msgsnd (void *arg)
     long int type;
     char mem[1];
   } m;
-  m.type = 100;
+  /* We need a positive random number.  */
+  do
+    m.type = random ();
+  while (m.type <= 0);
   msgsnd (tempmsg, (struct msgbuf *) &m, sizeof (m.mem), 0);
 
   pthread_cleanup_pop (0);