Bug 927 - [POSIX] case pthread_cond_broadcast does not kill itself after finished
Summary: [POSIX] case pthread_cond_broadcast does not kill itself after finished
Status: VERIFIED WORKSFORME
Alias: None
Product: Kernel
Classification: Yocto Project Subprojects
Component: kernel-tooling (show other bugs)
Version: 1.0
Hardware: x86 Multiple
: Low normal
Target Milestone: 1.3
Assignee: Kai Kang
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2011-03-23 07:12 UTC by Jiajun Xu
Modified: 2012-10-22 07:52 UTC (History)
9 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jiajun Xu 2011-03-23 07:12:44 UTC
Image location: the failure exists on all targets, including core tagets and bsp targets(http://autobuilder.pokylinux.org/nightly/20110318-3/)
branch: bernard/poky master tree
meta-intel commit: 83384c3e83d69245dfe19e36b2a64c8973ad8462
poky commit: 82af8b9fb6d6d1439943fd15b8a75c0e663e4a45 

The issue exists in previous build also(RC1, RC2 and RC3). If we run posix test suite with yocto image, one sub-suite called pthread_cond_broadcast won't kill itself after finished. The sub-suite could return pass but it will eat the system resource, for example the free memory, so system response will be very slow.

On other OSDs, like RHEL5 and RHEL6, there is no such issue with the sub test suite.

To reproduce the bug, you could download posix test suite from http://sourceforge.net/projects/posixtest/files/.
1. Extract the test suite
2. cd into the test suite folder
3. Uncomment "-D_XOPEN_SOURCE=600 -lpthread -lrt -lm" in LDFLAGS
4. Run "export POSIX_TARGET=conformance/interfaces/pthread_cond_broadcast"
5. Run "make"
6. Check the memory and process in system

The free command outputs following before running the case:
#######
root@crownbay:~# free
             total       used       free     shared    buffers     cached
Mem:       1021792      48356     973436          0        620      11816
-/+ buffers/cache:      35920     985872
Swap:      7812092      12020    7800072

#######

The free command outputs following after running the case:
######
root@crownbay:/opt/posixtestsuite# free
             total       used       free     shared    buffers     cached
Mem:       1021792    1000384      21408          0        212       6108
-/+ buffers/cache:     994064      27728
Swap:      7812092     122608    7689484
######

After we could find that many processes of pthread_cond_broadcast are running in background.
######
root@crownbay:/opt/posixtestsuite# ps -ef | grep conformance
root     15422     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15423     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15424     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15425     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15426     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15427     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15428     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15429     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15430     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15431     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15432     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15433     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15434     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15435     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15436     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15437     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15438     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15439     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15440     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15441     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15442     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15443     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15444     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15445     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15446     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15447     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15448     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15449     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15450     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15451     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15452     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15453     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15454     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15455     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15456     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15457     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15458     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15459     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15460     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15461     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15462     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15463     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15464     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15465     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15466     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15467     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15468     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15469     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15470     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15471     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15472     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15473     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15474     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15475     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15476     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15477     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15478     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15479     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15480     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15481     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15482     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15483     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15484     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15485     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15486     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15487     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15488     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15489     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15490     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15491     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15492     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15493     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15494     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15495     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15496     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15497     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15498     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15499     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15500     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15501     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15502     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15503     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15504     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15505     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15506     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15507     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15508     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15509     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15510     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15511     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15512     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15513     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15514     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15515     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15516     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15517     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15518     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15519     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15520     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15521     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15522     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15523     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15524     1  0 22:46 pts/1    00:00:00 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15525     1  9 22:46 pts/1    00:00:34 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15526     1  8 22:46 pts/1    00:00:32 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15527     1  8 22:46 pts/1    00:00:32 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15528     1  4 22:46 pts/1    00:00:15 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15529     1  8 22:47 pts/1    00:00:25 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15531     1  5 22:48 pts/1    00:00:14 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15532     1  5 22:48 pts/1    00:00:14 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15533     1  7 22:48 pts/1    00:00:18 conformance/interfaces/pthread_cond_broadcast/1-2.test
root     15534     1  7 22:48 pts/1    00:00:18 conformance/interfaces/pthread_cond_broadcast/1-2.test
######
Comment 1 Darren Hart 2011-09-06 09:13:38 UTC
Unfortunately I wasn't able to dig into this in time for 1.1. As there have been no other reports of failures using pthreads outside of the LTP test cases, I'm moving this 1.2.
Comment 2 Darren Hart 2011-12-20 09:29:43 UTC
Dropping to Low as this has no known impact outside of LTP.
Comment 3 Kai Kang 2012-08-17 03:21:41 UTC
Test on routerstation and mpc8315e, no such threads remain.
Comment 4 Yi Zhao 2012-10-22 07:52:35 UTC
Verified with 1.3 M5.