Problem Report Number |
0046 |
Submitter's Classification |
Test Suite problem |
State |
Resolved |
Resolution |
Test Suite Deficiency (TSD) |
Problem Resolution ID |
TSD.PX.0021 |
Raised |
2007-04-02 22:20 |
Updated |
2007-04-13 19:36 |
Published |
2007-04-13 19:36 |
Product Standard |
PSE52 Realtime Controller 1003.1-2003 System |
Certification Program |
POSIX Certified by IEEE and The Open Group |
Test Suite |
VSRT-PSE version 5.3.7 |
Test Identification |
rt.os/mqueue/mq_open/T.mq_open.18 |
Problem Summary |
rt.os/mqueue/mq_open test 18 fails when VSRT_MQDES_ISFILEDES=y |
Problem Text |
Test 18 detects VSRT_MQDES_ISFILEDES=Y and then proceeds to open
file descriptors until it gets an EMFILE error.However it doesn't stop
when i reaches MAX_SAVED_DESCRIPTORS, so the loop will open all available
descriptors, causing all subsequent mq_open() calls to fail with EMFILE. |
Test Output |
***********************************************************************
/tset/rt.os/mqueue/mq_open/T.mq_open 18 Failed
Test Description:
If _POSIX_MESSAGE_PASSING is defined or the implementation supports
the mq_open() function as described in XSH5 and XSH6:
A call to mq_open() when too many message queue descriptors or file
descriptors are currently in use by the calling process shall return
-1 and set errno to EMFILE.
Test Information:
mq_open() failed opening descriptor 0 for "/dev/mqueue/vsrt_mqueue.0",
errno = 24 (EMFILE)
mq_open() failed opening descriptor 1 for "/dev/mqueue/vsrt_mqueue.1",
errno = 24 (EMFILE)
mq_open() failed opening descriptor 2 for "/dev/mqueue/vsrt_mqueue.2",
errno = 24 (EMFILE)
mq_open() failed opening descriptor 3 for "/dev/mqueue/vsrt_mqueue.3",
errno = 24 (EMFILE)
... errors continue for all remaining mq_open attempts ... |