[uClibc 0004994]: pthreads stress test hangs on read() returning EINTR

bugs at busybox.net bugs at busybox.net
Mon Sep 15 21:24:14 UTC 2008


The following issue has been SUBMITTED. 
====================================================================== 
http://busybox.net/bugs/view.php?id=4994 
====================================================================== 
Reported By:                cndougla
Assigned To:                uClibc
====================================================================== 
Project:                    uClibc
Issue ID:                   4994
Category:                   Posix Threads
Reproducibility:            sometimes
Severity:                   major
Priority:                   normal
Status:                     assigned
====================================================================== 
Date Submitted:             09-15-2008 14:24 PDT
Last Modified:              09-15-2008 14:24 PDT
====================================================================== 
Summary:                    pthreads stress test hangs on read() returning EINTR
Description: 
The test case attached is a stress test for interprocess communication.
Although it has many modes, this bug is in relation to running it as
"htargs fork pipes". It will spawn 30 threads. Each thread will loop 50
times over. Each loop will fork() off a new process that will feed the
output of "cat /proc/loadavg" to the parent thread. The output is sent
through a pipe that is opened in each loop. One character at a time is
read() from the pipe.

What we are seeing is each thread is progressing through its loops
normally until at least one or up to around five threads complete their
loops. At that point, things go awry, and the remaining threads that are
still trying to read() from one of their iterations will immediately
return -1 and set errno to EINTR. Subsequent read() calls will immediately
return the same.

This has been tested on 0.9.29. The test case is compiled with the
-pthread flag.
====================================================================== 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
09-15-08 14:24  cndougla       New Issue                                    
09-15-08 14:24  cndougla       Status                   new => assigned     
09-15-08 14:24  cndougla       Assigned To               => uClibc          
09-15-08 14:24  cndougla       File Added: htargs.c                         
======================================================================




More information about the uClibc-cvs mailing list