POSIX History Results: Difference between revisions

From Yocto Project
Jump to navigationJump to search
 
(68 intermediate revisions by the same user not shown)
Line 17: Line 17:
'''POSIX''': that test case is in development, that causes the test fails
'''POSIX''': that test case is in development, that causes the test fails


 
===3.0 RC2 build===
===1.3.2 20130516 build===
'''Yocto 3.0 RC2 build''' with POSIX test suite version '''20190517'''.
'''Yocto 1.3.2 20130516 build''' with POSIX test suite version '''20120903'''.


====AIO====
====AIO====
Line 27: Line 26:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard ||  
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.  


eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
The POSIX spec says about aio_error:
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
|| aio_return/2-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
  aio_return() returned 111
||
||  
|-
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
 
In glibc the return value is same as first return.  
In eglibc the return value is same as first return.  
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
|| aio_return/3-2 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
|| aio_return/4-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_suspend_5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| aio_error/3-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
'''''Stub Case'''''
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
Test case is a stub
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
 
|| aio_read/9-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED  ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
||
|-
|-
 
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| aio_write/7-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
|-
|-
|}
====SIG====


|| aio_suspend/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is a stub
||
|-
|| aio_suspend/5-1 || POSIX  || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||  ||  ||
|-
|}


|| aio_fsync/1-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||
====SEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init_7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|| aio_fsync/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||
Then return '''UNTESTED'''
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||
 
|-
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|| aio_fsync/3-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED ||
It return UNTESTED, we don't need care it.
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
|-
|}
 
====THR====


|| aio_fsync/6-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED  ||  
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_cond_destroy_speculative_4-1 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED || ||
|| aio_fsync/10-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED  ||  
|| pthread_mutex_init_speculative_5-2 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED || ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_mutexattr_gettype_speculative_3-1 || Untested || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED || ||
|| aio_fsync/13-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
|| aio_read/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED  ||  
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|| aio_read/6-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
'''''Stub Case'''''
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
Same with aio_read/2-1
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| aio_read/12-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
||
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|| aio_read/13-1 ||POSIX  || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|| aio_read/14-1 ||POSIX  || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
|| aio_read/15-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||  
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
||  
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|}


====TMR====


|| aio_write/4-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED  ||  
{|border="1"
'''''Stub Case'''''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
 
Test case is a stub
||
|-
|-
 
|| clock_1-1 ||  || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|| aio_write/10-1 || POSIX || sugarbay   mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED ||  
|-
'''''Stub Case'''''
|| clock_getcpuclockid_5-1 || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
Test case is a stub
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
||
|-
|-
|}


|| aio_write/11-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED  ||
====MSG====
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| n/a || || ||  || ||  
|| aio_write/12-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
|}


|| aio_write/13-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED  ||
====TPS====
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| lio_listio/16-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| lio_listio/17-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| lio_listio/19-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED ||  
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
||  
Test case is not complete, and just return UNTESTED
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
||
|-
|-
 
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| lio_listio/20-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED ||
Testing with user deamon (uid: 1)
'''''Stub Case'''''
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/21-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/22-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====


|| lio_listio/23-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED  ||  
{|border="1"
'''''Stub Case'''''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
 
|-
Test case is not complete, and just return UNTESTED  
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/24-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED ||  
||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||  
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/25-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|}
|}


====SIG====
===2.7 RC2 build===
'''Yocto 2.7 RC2 build''' with POSIX test suite version '''20190115'''.


====AIO====




Line 297: Line 272:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a || ||  ||   ||  
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


||  
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend_5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
 
====SIG====
 
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
|}


====SEM====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay  ||
|| sem_init_7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
Line 316: Line 336:
Then return '''UNTESTED'''
Then return '''UNTESTED'''


|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 331: Line 351:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_broadcast/1-2  || '''Limitted to memory''' || routerstation mpc8315e || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
|-
|| pthread_cond_destroy_speculative_4-1 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED || ||
|-
|| pthread_mutex_init_speculative_5-2 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED ||  ||
|-
|| pthread_mutexattr_gettype_speculative_3-1 || Untested || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED ||  ||
|-
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
|-
|-
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
execution: HUNG
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
 
|-
 
|| pthread_rwlock_rdlock/2-1  || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay  || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
||
||
|-
|-
 
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay  ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. || See pthread_rwlock_rdlock/2-1 ||
|-
 
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay  || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 363: Line 388:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_getoverrun/1-1       || '''NEW''' || beagleboard || || || n/a
|| clock_1-1 || || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|-
|-
|| timer_getoverrun/3-1       || POSIX || beagleboard routerstation mpc8315e sugarbay  || || '''Stub Case'''
|| clock_getcpuclockid_5-1 || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay  ||  
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
   clock_getcpuclockid(1, ..) passed unexpectedly  
   clock_getcpuclockid(1, ..) passed unexpectedly  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
 
|-
 
|| n/a
|}
|}


Line 387: Line 403:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED ||  
|| n/a ||  || || || ||  
'''Stub Case'''
|-
|}


Just print something and then return UNTESTED
====TPS====
|| n/a
|-
 
|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
|| mq_open/10-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/14-1              || POSIX || beagleboard  routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/17-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/22-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/25-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/6-1           || POSIX          || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay  ||UNTESTED  || '''Stub Case'''
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
|}
|}


====TPS====
====MEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1         || '''Not Supported'''     || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
   Testing with user deamon (euid, uid) = (1, 1)
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
   The function sched_getparam has successed.
||
||  
|-
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.  
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.  
   pa: 0x400fb000
For default security operations, security_task_getscheduler() is a stub function and just return 0.
  pa_2: 0x40115000
 
  Modification of the partial page
   at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
||
||
|-
|-
||sched_getscheduler/7-1     || '''Not Supportted'''   || beagleboard routerstation mpc8315e sugarbay  ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
Testing with user deamon (uid: 1)
||
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
|| n/a
 
|-
|-
 
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||sched_get_priority_max/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||
 
|-
|-
||sched_get_priority_min/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
 
|-
|-
||sched_getscheduler/2-1    || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/3-1        || POSIX          || beagleboard  routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|}


|-
===2.7 M3 RC1 build===
||sched_setparam/6-1        || POSIX           || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
'''Yocto 2.7 M3 RC1 build''' with POSIX test suite version '''20190115'''.


|-
====AIO====
||sched_setparam/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a


|-
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/12-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
||sched_setparam/13-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|-
||sched_setparam/14-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
 
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
 
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/17-1       || POSIX           || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| aio_suspend_5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
Test case is a stub
||
|-
|-
||sched_setparam/18-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}


|-
====SIG====
||sched_setparam/19-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a


|-
||sched_setparam/20-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a


|-
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| n/a || || || || ||  
|-
|}


|-
====SEM====
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sched_setparam/23-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| sem_init_7-|| '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|-
Then return '''UNTESTED'''
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|-
It return UNTESTED, we don't need care it.
||sched_setparam/25-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


||
|}


|-
====THR====
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
 
 
|-
|-
||sched_setscheduler/2-1           || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_cond_destroy_speculative_4-1 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED || ||
 
 
|-
|-
||sched_setscheduler/5-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_mutex_init_speculative_5-2 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED || ||
 
 
|-
|-
||sched_setscheduler/6-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_mutexattr_gettype_speculative_3-1 || Untested || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED || ||
 
 
|-
|-
||sched_setscheduler/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setscheduler/9-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setscheduler/10-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
||sched_setscheduler/11-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
|-
|-
||sched_setscheduler/12-1        || POSIX          || beagleboard routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
 
|-
|-
||sched_setscheduler/13-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|}


|-
====TMR====
||sched_setscheduler/15-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| clock_1-1 || || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
 
|-
|-
||sched_setscheduler/17-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| clock_getcpuclockid_5-1 || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|-
||sched_setscheduler/17-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====MSG====
||sched_setscheduler/17-4      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/19-2      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || ||  ||  || ||  
 
|-
||sched_setscheduler/19-3      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
||sched_setscheduler/19-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
 
|-
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a
|}
|}


====MEM====
====TPS====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||  
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
 
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
 
The mapped page is cached. This case is not supported by Linux.
 
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
|| n/a
 
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||  
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
  Modification of the partial page
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.
 
shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==>  shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
|| n/a
 
|-
|-
|| mmap/27-1                   || POSIX || beagleboard routerstation mpc8315e sugarbay  || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED || n/a
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
 
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.  
In the manual of sched_getparam about return value:
EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
|| mmap/28-1                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||  
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
  Test Fail: mmap/28-1.c Got no error at mmap()
Testing with user deamon (uid: 1)
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
||
 
|-
This case is NOT supported by Linux.
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|| n/a
|-
 
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay  ||
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
off: fffff000, len: fffff000
 
expect EOVERFLOW but get other error: Cannot allocate memory
 
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
 
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         
 
|-
|-
|| shm_open/2-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/6-1                 || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/7-1                || POSIX || beagleboard routerstation mpc8315e sugarbay  || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/9-1                || POSIX ||  beagleboard  routerstation  mpc8315e sugarbay  ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
====MEM====
|| shm_open/10-1                || POSIX ||  beagleboard routerstation  mpc8315e sugarbay  ||  || test code just return PTS_UNTESTED and do nothing || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/12-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
|| shm_open/19-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||  || test code just return PTS_UNTESTED and do nothing || n/a
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
 
   pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
|| shm_open/24-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   ||test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/29-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay  ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}


 
===2.7 M2 RC1 build===
===1.4 M6 RC2 20130418 build===
'''Yocto 2.7 M2 RC1 build''' with POSIX test suite version '''20180926'''.
'''Yocto 1.4 M6 RC2 20130418 build''' with POSIX test suite version '''20120903'''.


====AIO====
====AIO====
Line 737: Line 764:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_cancel/6-1 || '''New''' || routerstation || conformance/interfaces/aio_cancel/6-1: execution: UNRESOLVED || ||
|| aio_cancel_7-1 || '''NEW''' || mpc8315e  || conformance/interfaces/aio_cancel/aio_cancel_7-1: execution: UNRESOLVED || ||
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard ||  
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.  


eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
The POSIX spec says about aio_error:
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
|| aio_return/2-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
  aio_return() returned 111
||
||  
|-
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
 
In glibc the return value is same as first return.  
In eglibc the return value is same as first return.  
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
|| aio_return/3-2 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
|| aio_return/4-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_suspend_5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| aio_error/3-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
'''''Stub Case'''''
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
Test case is a stub
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| aio_read/9-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
|-
 
|| aio_write/7-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
|-
|-
|}
====SIG====


|| aio_suspend/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is a stub
||
|-
|| aio_suspend/5-1 || POSIX  || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||  ||  ||
|-
|}


|| aio_fsync/1-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||
====SEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init_7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|| aio_fsync/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||
Then return '''UNTESTED'''
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||
|-


|| aio_fsync/3-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED ||
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
'''''Stub Case'''''
 
It return UNTESTED, we don't need care it.


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
|-
|}
 
====THR====


|| aio_fsync/6-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED  ||  
|| pthread_cond_destroy_speculative_4-1 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED || ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_mutex_init_speculative_5-2 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED || ||
|| aio_fsync/10-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED ||  
|| pthread_mutexattr_gettype_speculative_3-1 || Untested || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED || ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| aio_fsync/13-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
'''''Stub Case'''''
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
 
||
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
|| aio_read/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED  ||  
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| aio_read/6-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
 
Same with aio_read/2-1  
||
||
|-
|-
 
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|| aio_read/12-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
|-
Test case is not complete, and just return UNTESTED
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
|| N/A
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|}


|| aio_read/13-1 ||POSIX  || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||
====TMR====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| clock_1-1 ||  || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|| aio_read/14-1 ||POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| clock_getcpuclockid_5-1 || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
|| aio_read/15-1 || POSIX || sugarbay   mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED ||  
  clock_getcpuclockid(1, ..) passed unexpectedly
'''''Stub Case'''''
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
Test case is not complete, and just return UNTESTED
||
|| N/A
|-
|-
|}


====MSG====


|| aio_write/4-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED  ||  
{|border="1"
'''''Stub Case'''''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
 
Test case is a stub
||
|-
|-
 
|| n/a || || ||  || ||  
|| aio_write/10-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
|}


|| aio_write/11-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED  ||
====TPS====
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| aio_write/12-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| aio_write/13-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| lio_listio/16-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED ||  
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
||  
Test case is not complete, and just return UNTESTED
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
||
|-
|-
 
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| lio_listio/17-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED ||
Testing with user deamon (uid: 1)
'''''Stub Case'''''
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/19-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/20-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/21-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/22-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}


|| lio_listio/23-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED  ||
====MEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
||
|-
|-
 
|| shm_open_23-1 ||  || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||
|| lio_listio/24-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED  ||  
||
'''''Stub Case'''''
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
Test case is not complete, and just return UNTESTED
||
||  
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/25-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|}
|}


====SIG====
===2.7 M1 RC1 build===
'''Yocto 2.7 M1 RC1 build''' with POSIX test suite version '''20180926'''.


====AIO====




Line 1,009: Line 1,015:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a || ||  ||   ||  
|| aio_error_2-1 || '''NEW''' || edgerouter || conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED ||
||
|-
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


||  
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend_5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
 
====SIG====
 
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
|}


====SEM====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay  ||
|| sem_init_7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
Line 1,028: Line 1,082:
Then return '''UNTESTED'''
Then return '''UNTESTED'''


|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 1,043: Line 1,097:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_wait/2-1 || '''New''' || routerstation || conformance/interfaces/pthread_cond_wait/2-1: execution: UNRESOLVED  ||  ||
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
|-
|| pthread_cond_destroy_speculative_4-1 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED ||  ||
|-
|| pthread_mutex_init_speculative_5-2 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED ||  ||
|-
|| pthread_mutexattr_gettype_speculative_3-1 || Untested || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED ||  ||
|-
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
|-
|-
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
execution: HUNG
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
 
|-
 
|| pthread_rwlock_rdlock/2-1  || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay  || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
||
||
|-
|-
 
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay  ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. || See pthread_rwlock_rdlock/2-1 ||
|-
 
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay  || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 1,077: Line 1,134:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_getoverrun/1-1       || '''NEW''' || beagleboard || || || n/a
|| clock_1-1 || || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|-
|-
|| timer_getoverrun/3-1       || POSIX || beagleboard routerstation mpc8315e sugarbay  || || '''Stub Case'''
|| clock_getcpuclockid_5-1 || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay  ||  
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
   clock_getcpuclockid(1, ..) passed unexpectedly  
   clock_getcpuclockid(1, ..) passed unexpectedly  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
 
|-
 
|| n/a
|}
|}


Line 1,101: Line 1,149:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED ||  
|| n/a ||  || || || ||  
'''Stub Case'''
|-
|}


Just print something and then return UNTESTED
====TPS====
|| n/a
|-
 
|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
|| mq_open/10-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/14-1              || POSIX || beagleboard  routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/17-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/22-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/25-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/6-1           || POSIX          || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay  ||UNTESTED  || '''Stub Case'''
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
|}
|}


====TPS====
====MEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1         || '''Not Supported'''     || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
   Testing with user deamon (euid, uid) = (1, 1)
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
   The function sched_getparam has successed.
||
||  
|-
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.  
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.  
   pa: 0x400fb000
For default security operations, security_task_getscheduler() is a stub function and just return 0.
  pa_2: 0x40115000
 
  Modification of the partial page
   at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
||
||
|-
|-
||sched_getscheduler/7-1     || '''Not Supportted'''  || beagleboard routerstation mpc8315e sugarbay  ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
|| shm_open_23-1 || || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||  
Testing with user deamon (uid: 1)
||
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
|| n/a
 
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||sched_get_priority_max/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||
 
|-
|-
||sched_get_priority_min/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
 
|-
|-
||sched_getscheduler/2-1     || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/3-1        || POSIX          || beagleboard  routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|}


|-
===2.6 RC1 build===
||sched_setparam/7-1        || POSIX           || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
'''Yocto 2.6 RC1 build''' with POSIX test suite version '''20180515'''.


|-
====AIO====
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a


|-
||sched_setparam/12-1 || Ignore      || beagleboard routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/13-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error_2-1 || '''NEW''' || edgerouter || conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED ||  
 
||
|-
|-
||sched_setparam/14-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|-
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
 
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/17-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
 
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/18-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/19-1       || POSIX           || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| aio_suspend_5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
Test case is a stub
||
|-
|-
||sched_setparam/20-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|}


|-
====SIG====
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a


|-
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
|| sched_setparam/23-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || || || || ||  
 
|-  
|-
|}
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


====SEM====


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/25-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| sem_init_7-|| '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


Then return '''UNTESTED'''


|-
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|-
It return UNTESTED, we don't need care it.
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


||
|}


|-
====THR====
||sched_setscheduler/2-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/5-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
 
 
|-
|-
||sched_setscheduler/6-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_cond_destroy_speculative_4-1 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED || ||
 
 
|-
|-
||sched_setscheduler/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_mutex_init_speculative_5-2 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED || ||
 
 
|-
|-
||sched_setscheduler/9-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_mutexattr_gettype_speculative_3-1 || Untested || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED || ||
 
|-
|-
||sched_setscheduler/10-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setscheduler/11-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setscheduler/12-1        || POSIX          || beagleboard routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
 
||
|-
|-
||sched_setscheduler/13-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
|-
|-
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
|-
|-
||sched_setscheduler/15-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|}


|-
====TMR====
||sched_setscheduler/17-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/17-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| clock_1-1 || || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
 
|-
|-
||sched_setscheduler/17-4      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| clock_getcpuclockid_5-1 || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|-
||sched_setscheduler/19-2      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====MSG====
||sched_setscheduler/19-3      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
||sched_setscheduler/19-4      || Ignore      || beagleboard  routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| n/a || || || || ||  
 
|-
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a
|}
|}


====MEM====
====TPS====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||  
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
  pa: 0x400fb000
|-
  pa_2: 0x40115000
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
 
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
 
The mapped page is cached. This case is not supported by Linux.
 
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
|| n/a
 
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||  
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
  Modification of the partial page
Testing with user deamon (euid, uid) = (1, 1)
  at the end of an object is written out
The function sched_getparam has successed.
|| Same with mmap/11-4, and this case test share memory instead of regular file.
||  
 
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.  
shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==>  shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.  
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
|| n/a
For default security operations, security_task_getscheduler() is a stub function and just return 0.  
 
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
|| mmap/27-1                   || POSIX || beagleboard routerstation mpc8315e sugarbay  || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
 
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
|-
|| mmap/28-1                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||  
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
  Test Fail: mmap/28-1.c Got no error at mmap()
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.
 
Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
 
This case is NOT supported by Linux.
|| n/a
 
|-
|-
|| mmap/31-1                   || POSIX || mpc8315e beagleboard sugarbay  ||
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
 
|-
off: fffff000, len: fffff000
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
expect EOVERFLOW but get other error: Cannot allocate memory
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
 
|-
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
 
|-
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
|-
mpc8315e       0xc0000000
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
routerstation  0x7fff8000UL
|-
sugarbay      0xffff880000000000
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
    || n/a         
|-
 
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|| shm_open/2-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/6-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/7-1                || POSIX || beagleboard routerstation mpc8315e sugarbay  ||  ||  test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
====MEM====
|| shm_open/9-1                || POSIX ||  beagleboard  routerstation  mpc8315e sugarbay  ||  || test code just return PTS_UNTESTED and do nothing || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/10-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
|| shm_open/12-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||  || test code just return PTS_UNTESTED and do nothing || n/a
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 
   pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
|| shm_open/19-1                 || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_23-1 || || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||  
 
||
|-
|-
|| shm_open/24-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   ||test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/29-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay  ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}


===1.4 M5 RC3 20130403 build===
===2.6 M3 RC1 build===
'''Yocto 1.4 M5 RC3 20130403 build''' with POSIX test suite version '''20120903'''.
'''Yocto 2.6 M3 RC1 build''' with POSIX test suite version '''20180515'''.


====AIO====
====AIO====
Line 1,450: Line 1,519:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard ||  
|| aio_error_2-1 || '''NEW''' || edgerouter || conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED ||  
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
||
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.
 
eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
|-
|-
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


|| aio_return/2-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
The POSIX spec says about aio_error:
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
The aio_error( ) function may fail if:
  aio_return() returned 111
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||  
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
 
In glibc the return value is same as first return.  
In eglibc the return value is same as first return.  
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
|| aio_return/3-2 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
|| aio_return/4-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_suspend_5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| aio_error/3-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
'''''Stub Case'''''
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
Test case is a stub
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| aio_read/9-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
|-
 
|| aio_write/7-1 || '''Not A Bug''' || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
|-
|-
|}
====SIG====


|| aio_suspend/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is a stub
||
|-
|| aio_suspend/5-1 || POSIX  || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||  ||  ||
|-
|}


|| aio_fsync/1-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||
====SEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init_7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|| aio_fsync/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||
Then return '''UNTESTED'''
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||
|-


|| aio_fsync/3-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED ||
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
'''''Stub Case'''''
 
It return UNTESTED, we don't need care it.


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
|-
|}
 
====THR====


|| aio_fsync/6-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED  ||  
|| pthread_cond_destroy_speculative_4-1 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED || ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_mutex_init_speculative_5-2 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED || ||
|| aio_fsync/10-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED ||  
|| pthread_mutexattr_gettype_speculative_3-1 || Untested || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED || ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| aio_fsync/13-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
'''''Stub Case'''''
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
 
||
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
|| aio_read/2-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED  ||  
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| aio_read/6-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
 
Same with aio_read/2-1  
||
||
|-
|-
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|-
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}


|| aio_read/12-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||
====TMR====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| clock_1-1 ||  || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|| aio_read/13-1 ||POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| clock_getcpuclockid_5-1 || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
|| aio_read/14-1 ||POSIX  || sugarbay   mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED ||  
  clock_getcpuclockid(1, ..) passed unexpectedly
'''''Stub Case'''''
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
Test case is not complete, and just return UNTESTED
||
|| N/A
|-
|-
|}


|| aio_read/15-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||
====MSG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|-
|}


====TPS====


|| aio_write/4-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED  ||  
{|border="1"
'''''Stub Case'''''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
 
Test case is a stub
||
|-
|-
 
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| aio_write/10-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| aio_write/11-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| aio_write/12-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED ||  
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
||  
Test case is a stub  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
||
|-
|-
 
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| aio_write/13-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED ||
Testing with user deamon (uid: 1)
'''''Stub Case'''''
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Test case is a stub
||
||
|-
|-
 
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/16-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/17-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/19-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/20-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/21-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====


|| lio_listio/22-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED  ||  
{|border="1"
'''''Stub Case'''''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
 
|-
Test case is not complete, and just return UNTESTED
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
||
|-
|-
 
|| shm_open_23-1 ||  || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||
|| lio_listio/23-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED  ||  
||
'''''Stub Case'''''
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
Test case is not complete, and just return UNTESTED
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/24-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED ||  
||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||  
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/25-1 || POSIX || sugarbay  mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|}
|}


====SIG====
===2.6 M2 RC1 build===
'''Yocto 2.6 M2 RC1 build''' with POSIX test suite version '''20180515'''.


====AIO====




Line 1,720: Line 1,771:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a || ||  ||   ||  
|| aio_error_2-1 || '''NEW''' || edgerouter || conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED ||
||
|-
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


||  
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend_5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
 
====SIG====
 
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
|}


====SEM====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay  ||
|| sem_init_7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
Line 1,739: Line 1,838:
Then return '''UNTESTED'''
Then return '''UNTESTED'''


|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 1,754: Line 1,853:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_broadcast/1-2  || '''Limitted to memory''' || routerstation mpc8315e || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
|-
|| pthread_cond_destroy_speculative_4-1 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED || ||
|-
|| pthread_mutex_init_speculative_5-2 || Unsupported || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED ||  ||
|-
|| pthread_mutexattr_gettype_speculative_3-1 || Untested || beaglebone mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED ||  ||
|-
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|-
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||
execution: HUNG
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
 
|-
 
|| pthread_rwlock_rdlock/2-1  || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay  || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-2  || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay  ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. || See pthread_rwlock_rdlock/2-1 ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
 
||
|-
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|-
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay  || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 1,786: Line 1,890:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_getoverrun/1-1       || '''NEW''' || beagleboard || || || n/a
|| clock_1-1 || || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|-
|-
|| timer_getoverrun/3-1       || POSIX || beagleboard routerstation mpc8315e sugarbay  || || '''Stub Case'''
|| clock_getcpuclockid_5-1 || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay  ||  
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
   clock_getcpuclockid(1, ..) passed unexpectedly  
   clock_getcpuclockid(1, ..) passed unexpectedly  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
 
|-
 
|| clock_settime_8-1 || NEW || beaglebone || conformance/interfaces/clock_settime/clock_settime_8-1: execution: FAILED || ||
|| n/a
|-
|}
|}


Line 1,810: Line 1,907:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED ||  
|| n/a ||  || || || ||  
'''Stub Case'''
|-
|}


Just print something and then return UNTESTED
====TPS====
|| n/a
|-
 
|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_open/10-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/14-1              || POSIX || beagleboard  routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/17-1             || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Just print something and then return UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
|| n/a
The function sched_getparam has successed.
 
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
|| mq_open/22-1             || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Just print something and then return UNTESTED
Testing with user deamon (uid: 1)
|| n/a
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
||
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/25-1             || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/6-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay  ||UNTESTED  || '''Stub Case'''
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay  || UNTESTED || '''Stub Case'''
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
|}
 
====TPS====
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1        || '''Not Supported'''      || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
  Testing with user deamon (euid, uid) = (1, 1)
  The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
 
||
 
|-
|-
||sched_getscheduler/7-1    || '''Not Supportted'''  || beagleboard routerstation mpc8315e sugarbay  ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
|| n/a
 
|-
|-
 
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
||sched_get_priority_max/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
|-
||sched_get_priority_min/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
 
|-
|-
||sched_getscheduler/2-1    || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/3-1         || POSIX          || beagleboard  routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/12-1 || Ignore     || beagleboard routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/13-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/14-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====MEM====
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/17-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
||sched_setparam/18-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
||sched_setparam/19-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| shm_open_23-1 || || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||  
 
||
|-
|-
||sched_setparam/20-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| sched_setparam/23-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
===2.5 RC1 build===
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
'''Yocto 2.5 RC1 build''' with POSIX test suite version '''20180118'''.


|-
====AIO====
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/25-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_cancel_5-1 || '''NEW''' || mpc8315e || conformance/interfaces/aio_cancel/aio_cancel_5-1: execution: UNRESOLVED || ||
 
 
|-
|-
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
 
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
 
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setscheduler/2-1           || POSIX           || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| aio_suspend_5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
||sched_setscheduler/5-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
||sched_setscheduler/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|}


====SIG====


|-
||sched_setscheduler/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/9-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || || || || ||  
|-
|}


|-
====SEM====
||sched_setscheduler/10-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/11-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| sem_init_7-1   || '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|-
Then return '''UNTESTED'''
||sched_setscheduler/12-1        || POSIX          || beagleboard routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a


|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.


|-
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
||sched_setscheduler/13-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a


|-
It return UNTESTED, we don't need care it.
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a


|-
||
||sched_setscheduler/15-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|}


|-
====THR====
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a


|-
||sched_setscheduler/17-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
|-
|-
||sched_setscheduler/17-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setscheduler/17-4      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setscheduler/19-2     || Ignore      || beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock_2-2 || Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
||sched_setscheduler/19-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
|-
|-
||sched_setscheduler/19-4      || Ignore      || beagleboard  routerstation mpc8315e sugarbay  || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
|-
|-
||sched_setscheduler/22-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay  || || Just print something and then return || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay  || || Just print something and then return || n/a
|}
|}


====MEM====
====TMR====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||  
|| clock_1-1 ||  || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
  pa: 0x400fb000
|-
  pa_2: 0x40115000
|| clock_getcpuclockid_5-1 || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
   Modification of the partial page
   clock_getcpuclockid(1, ..) passed unexpectedly
  at the end of an object is written out
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
 
||
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.  
 
The mapped page is cached. This case is not supported by Linux.
 
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
|| n/a
 
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||
|}
  Modification of the partial page
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.


shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==>  shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
====MSG====
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/27-1                    || POSIX || beagleboard routerstation mpc8315e sugarbay  ||  || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
|| n/a || || ||  || ||  
 
|-
|-
|| mmap/28-1                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay  ||
|}
  Test Fail: mmap/28-1.c Got no error at mmap()
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.


Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
====TPS====
 
This case is NOT supported by Linux.
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay  ||
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
off: fffff000, len: fffff000
 
expect EOVERFLOW but get other error: Cannot allocate memory
 
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
 
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         
 
|-
|-
|| shm_open/2-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
 
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
|| shm_open/6-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/7-1                || POSIX || beagleboard routerstation mpc8315e sugarbay  || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/9-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/10-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/12-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/19-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/24-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   ||test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/29-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay  ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay  ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}


===1.4 M5 RC2 20130327 build===
====MEM====
'''Yocto 1.4 M5 RC2 20130327 build''' with POSIX test suite version '''20120903'''.
 
====AIO====
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard ||  
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.
 
eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
|-
 
|| aio_return/2-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
 
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
 
|| aio_return/3-2 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
 
|| aio_return/4-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| mmap_21-1 || '''NEW''' || beaglebone mpc8315e-rdb edgerouter || conformance/interfaces/mmap/mmap_21-1: execution: FAILED ||  
|| aio_error/3-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
|| aio_read/9-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED  ||  
  pa: 0x400fb000
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
  pa_2: 0x40115000
 
  Modification of the partial page
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
  at the end of an object is written out
 
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
||
||
|-
|-
 
|| shm_open_23-1 || || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||  
|| aio_write/7-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_suspend/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|| aio_suspend/5-1 || POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||  
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| aio_fsync/1-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED ||  
||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| aio_fsync/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
|-
|-
|}


|| aio_fsync/3-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED  ||
===2.5 M3 RC1 build===
'''''Stub Case'''''
'''Yocto 2.5 M3 RC1 build''' with POSIX test suite version '''20180118'''.


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
====AIO====
||
|-


|| aio_fsync/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED ||  
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
'''''Stub Case'''''
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


Test case is not complete, and just return UNTESTED
The POSIX spec says about aio_error:
|| N/A
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
|| aio_fsync/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED ||  
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
'''''Stub Case'''''
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
 
In glibc the return value is same as first return.
Test case is not complete, and just return UNTESTED
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|| N/A
|-
|-
 
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
|| aio_fsync/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED ||  
Same with aio_return/2-1
'''''Stub Case'''''
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
|| aio_read/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED ||  
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend_5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
'''''Stub Case'''''
'''''Stub Case'''''
 
Test case is a stub
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
 
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| aio_read/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but const value 1024 is not enough
 
Same with aio_read/2-1
||
||
|-
|-
|}


|| aio_read/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||
====SIG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
|| N/A
|-


|| aio_read/13-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||  ||  ||
|-
|}


|| aio_read/14-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||
====SEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init_7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|| aio_read/15-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||
Then return '''UNTESTED'''
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
|| N/A
|-


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|| aio_write/4-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED  ||
It return UNTESTED, we don't need care it.
'''''Stub Case'''''


Test case is a stub
||
||
|-
|}
 
====THR====


|| aio_write/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is a stub
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
|-
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|| aio_write/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
'''''Stub Case'''''
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
Test case is a stub
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| aio_write/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|-
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}


|| aio_write/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED  ||
====TMR====
'''''Stub Case'''''


Test case is a stub
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_1-1 ||  || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|-
|| clock_getcpuclockid_5-1 || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
||
|-
|-
|}


|| lio_listio/16-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED  ||
====MSG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| n/a || || ||  || ||  
|| lio_listio/17-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
|}


|| lio_listio/19-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED  ||
====TPS====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| lio_listio/20-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| lio_listio/21-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| lio_listio/22-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED ||  
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
||  
Test case is not complete, and just return UNTESTED
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
||
|-
|-
 
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| lio_listio/23-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED ||
Testing with user deamon (uid: 1)
'''''Stub Case'''''
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Test case is not complete, and just return UNTESTED
||
||
|-
|-
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}


|| lio_listio/24-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED  ||
====MEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED  
{|border="1"
||  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_23-1 ||  || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/25-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|}
|}


====SIG====
===2.5 M2 RC1 build===
'''Yocto 2.5 M2 RC1 build''' with POSIX test suite version '''20180118'''.


====AIO====




Line 2,429: Line 2,516:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a || ||  ||   ||  
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


||  
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend_5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
 
====SIG====
 
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
|}


====SEM====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|| sem_init_7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
Line 2,448: Line 2,580:
Then return '''UNTESTED'''
Then return '''UNTESTED'''


|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 2,463: Line 2,595:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e blacksand || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| pthread_barrier_destroy_2-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED || The case becomes invalid after glibc-2.23 ||
|-
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
|-
|-
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||  
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
execution: HUNG
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
||
 
|-
|-
 
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block.  || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
||
|-
|-
 
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. || See pthread_rwlock_rdlock/2-1 ||
|-
 
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 2,495: Line 2,626:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_getoverrun/1-1       || '''NEW''' || beagleboard || ||  || n/a
|| clock_1-1 ||  || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|-
|| timer_getoverrun/3-1       || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a
|-
|-
 
|| clock_getcpuclockid_5-1 || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
|| clock_getcpuclockid/5-1   || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
   clock_getcpuclockid(1, ..) passed unexpectedly  
   clock_getcpuclockid(1, ..) passed unexpectedly  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
 
|-
 
|| n/a
|}
|}


Line 2,519: Line 2,641:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED ||  
|| n/a ||  || || || ||  
'''Stub Case'''
|-
|}


Just print something and then return UNTESTED
====TPS====
|| n/a
|-
 
|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
|| mq_open/10-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/14-1              || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/17-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/22-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/25-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/6-1           || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||UNTESTED  || '''Stub Case'''
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
|}
|}


====TPS====
====MEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1         || '''Not Supported'''     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
   Testing with user deamon (euid, uid) = (1, 1)
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
   The function sched_getparam has successed.
||
||  
|-
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.  
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.  
   pa: 0x400fb000
For default security operations, security_task_getscheduler() is a stub function and just return 0.
  pa_2: 0x40115000
 
  Modification of the partial page
   at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
||
||
|-
|-
||sched_getscheduler/7-1     || '''Not Supportted'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
|| shm_open_23-1 || || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||  
Testing with user deamon (uid: 1)
||
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
|| n/a
 
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||sched_get_priority_max/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||
 
|-
|-
||sched_get_priority_min/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
 
|-
|-
||sched_getscheduler/2-1     || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/3-1        || POSIX          || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


|-
===2.5 M1 RC3 build===
||sched_setparam/7-1        || POSIX           || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
'''Yocto 2.5 M1 RC3 build''' with POSIX test suite version '''20170929'''.


|-
====AIO====
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


|-
||sched_setparam/12-1 || Ignore      || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/13-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
||sched_setparam/14-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
 
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
 
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/17-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/18-1       || POSIX           || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_suspend_5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
Test case is a stub
||
|-
|-
||sched_setparam/19-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
||sched_setparam/20-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|}


|-
====SIG====
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a


|-
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a


|-
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sched_setparam/23-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || || || || ||  
|-
|}


|-
====SEM====
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| sem_init_7-|| '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


Then return '''UNTESTED'''


|-
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||sched_setparam/25-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|-
It return UNTESTED, we don't need care it.
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


||
|}


|-
====THR====
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/2-1           || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || The case becomes invalid after glibc-2.23 ||
 
 
|-
|-
||sched_setscheduler/5-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_barrier_wait_6-1 || || beaglebone genericx86-64 || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
 
 
|-
|-
||sched_setscheduler/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setscheduler/7-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setscheduler/9-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock_2-|| Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
||sched_setscheduler/10-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
|-
|-
||sched_setscheduler/11-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
 
|-
|-
||sched_setscheduler/12-1       || POSIX          || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|}
 
====TMR====


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/13-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| clock_1-1 ||  || genericx86-64 || conformance/interfaces/clock/clock_1-1: execution: FAILED || ||
|-
|| clock_getcpuclockid_5-1 || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
 
====MSG====


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| n/a || || || || ||  
|-
|}


====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
||sched_setscheduler/15-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-2      || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-3      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-4      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-2      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-3      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-4      || Ignore     || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}
|}


Line 2,767: Line 2,963:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
   pa: 0x400fb000  
   pa: 0x400fb000  
   pa_2: 0x40115000  
   pa_2: 0x40115000  
Line 2,773: Line 2,973:
   at the end of an object is written out
   at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.  
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.  
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.  
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.  
The mapped page is cached. This case is not supported by Linux.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
  || n/a
||
 
|-
|| shm_open_23-1 || || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
  Modification of the partial page
||
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.
 
shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
|| n/a
 
|-
|-
|| mmap/27-1                   || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| mmap/28-1                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
  Test Fail: mmap/28-1.c Got no error at mmap()
||
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.  
 
Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
 
This case is NOT supported by Linux.
|| n/a
 
|-
|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay blacksand huronriver ||
|}


off: fffff000, len: fffff000
===2.5 M1 RC1 build===
'''Yocto 2.5 M1 RC1 build''' with POSIX test suite version '''20170929'''.


expect EOVERFLOW but get other error: Cannot allocate memory
====AIO====


|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.


In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
{|border="1"
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         
 
|-
|| shm_open/2-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_error_3-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
|| shm_open/6-1                 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_read_9-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|-
|| shm_open/7-1                 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_return_2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
 
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In glibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| shm_open/9-1                || POSIX ||  beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_return_3-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
 
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| shm_open/10-1                 || POSIX ||  beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_return_4-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| shm_open/12-1                 || POSIX ||  beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_suspend_5-1 || POSIX || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
Test case is a stub
||
|-
|-
|| shm_open/19-1                 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_write_7-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
|| shm_open/24-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  ||test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
====SIG====
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


|-
|| shm_open/29-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/42-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| n/a || ||  || || ||  
|-
|}
|}


===1.4 M4 RC1 20130220 build===
====SEM====
'''Yocto 1.4 M4 RC1 20130220 build''' with POSIX test suite version '''20120903'''.
 
====AIO====
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_cancel/5-1 || '''New''' || routerstation || conformance/interfaces/aio_cancel/5-1: execution: UNRESOLVED  ||  ||
|| sem_init_7-1   || '''Unsupported''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
|-
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard ||
  [17:07:31]File ../../../conformance/interfaces
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
  /sem_init/7-1.c cannot test: There is no
lio_listio/11-1.c Error lio_listio() should have returned -1
  constraint on SEM_NSEMS_MAX
||
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.


eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
Then return '''UNTESTED'''
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
|-


|| aio_return/2-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
|| In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  


In eglibc the return value is same as first return.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
 
|| aio_return/3-2 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-


|| aio_return/4-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
It return UNTESTED, we don't need care it.
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-


|| aio_error/3-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|}
|-


|| aio_read/9-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED  ||
====THR====
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.


Test case try to overflow the aio queue, but not quit sure the critical value on different OS.


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_barrier_destroy_2-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || The case becomes invalid after glibc-2.23 ||
|-
|| pthread_barrier_wait_6-1 ||  || beaglebone genericx86-64 || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
|-
|| pthread_cond_broadcast_1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|| aio_write/7-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
|-
|-
 
|| pthread_rwlock_rdlock_2-2 || Unsupport by glibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| aio_suspend/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
||
 
|-
Test case is a stub
|| pthread_rwlock_unlock_4-1 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
||
|-
|-
|| aio_suspend/5-1 || POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| pthread_rwlock_unlock_4-2 || Unsupported || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || Unlocking uninitialized rwlock is undefined on Linux ||
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
|| pthread_rwlock_unlock_3-1 || Unsupport by glibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
|| aio_fsync/1-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||  
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
||  
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|}


|| aio_fsync/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||
====TMR====
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| clock_getcpuclockid_5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
|| aio_fsync/3-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED ||  
  clock_getcpuclockid(1, ..) passed unexpectedly
'''''Stub Case'''''
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
|-
|-
|}


|| aio_fsync/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||
====MSG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED ||  
|| n/a || || ||  || ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|}


|| aio_fsync/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||
====TPS====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED  ||  
||sched_get_priority_max_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
'''''Stub Case'''''
|-
 
||sched_get_priority_min_1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_getparam_6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| aio_fsync/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED ||  
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
||  
Test case is not complete, and just return UNTESTED
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
|| N/A
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
 
||sched_getscheduler_7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
 
Testing with user deamon (uid: 1)
|| aio_read/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED  ||
The function sched_getscheduler has successed.
'''''Stub Case'''''
|| Similiar with sched_getparam/6-1
 
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
 
||sched_setparam_20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_read/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Same with aio_read/2-1
||
|-
|-
 
||sched_setparam_21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_read/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam_21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_read/13-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam_23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_read/14-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam_23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_read/15-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam_23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|| aio_write/4-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_setparam_23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_write/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_setparam_25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_write/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_setparam_25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_write/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_setparam_25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_write/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_setscheduler_17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| lio_listio/16-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setscheduler_17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| lio_listio/17-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setscheduler_17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| lio_listio/19-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
||sched_setscheduler_15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler_22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}


|| lio_listio/20-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED  ||
====MEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap_31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
||
|-
|-
 
|| mmap_11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
|| lio_listio/21-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||  
  pa: 0x400fb000
'''''Stub Case'''''
  pa_2: 0x40115000
 
  Modification of the partial page
Test case is not complete, and just return UNTESTED
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_23-1 ||  || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||
||
||
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| lio_listio/22-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| lio_listio/23-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/24-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED ||  
||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||  
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/25-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|}
|}


====SIG====
===2.4 RC3 build===
'''Yocto 2.4 RC3 build''' with POSIX test suite version '''20170516'''.


====AIO====




Line 3,140: Line 3,247:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a || ||  ||   ||  
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


||
The POSIX spec says about aio_error:
|}
The aio_error( ) function may fail if:
 
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
====SEM====
||
 
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
 
====SIG====
 
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
 
====SEM====
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
Line 3,163: Line 3,315:
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 3,174: Line 3,326:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e blacksand || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| pthread_barrier_destroy_2-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
|-
|| pthread_barrier_wait_6-1 ||  || beaglebone genericx86-64 || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|-
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||
execution: HUNG
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
 
|-
 
|| pthread_rwlock_rdlock/2-1  || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block.  || See pthread_rwlock_rdlock/2-1 ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
 
||
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
|-
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 3,206: Line 3,359:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_getoverrun/3-1      || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || '''Stub Case'''
|| clock_getcpuclockid/5-1    || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
   clock_getcpuclockid(1, ..) passed unexpectedly  
   clock_getcpuclockid(1, ..) passed unexpectedly  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
 
|-
 
|| n/a
|}
|}


Line 3,228: Line 3,372:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED ||  
|| n/a ||  || || || ||  
'''Stub Case'''
|-
|}


Just print something and then return UNTESTED
====TPS====
|| n/a
|-
 
|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_open/10-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/14-1              || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/17-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Just print something and then return UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
|| n/a
The function sched_getparam has successed.
 
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
|| mq_open/22-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Just print something and then return UNTESTED
Testing with user deamon (uid: 1)
|| n/a
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
||
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/25-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/6-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||UNTESTED  || '''Stub Case'''
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
|}
 
====TPS====
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1        || '''Not Supported'''      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
  Testing with user deamon (euid, uid) = (1, 1)
  The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
 
||
 
|-
|-
||sched_getscheduler/7-1    || '''Not Supportted'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
|| n/a
 
|-
|-
 
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
||sched_get_priority_max/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
|-
||sched_get_priority_min/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
 
|-
|-
||sched_getscheduler/2-1    || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/3-1         || POSIX          || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/12-1 || Ignore     || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/13-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/14-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====MEM====
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/17-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
||sched_setparam/18-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
||sched_setparam/19-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| shm_open_23-1 || '''NEW''' || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||  
 
||
|-
|-
||sched_setparam/20-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| sched_setparam/23-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
===2.4 RC2 build===
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
'''Yocto 2.4 RC2 build''' with POSIX test suite version '''20170516'''.


 
====AIO====
|-
||sched_setparam/25-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
 
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|-
||sched_setscheduler/2-1           || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
 
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
 
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setscheduler/5-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
 
Same with aio_return/2-1
 
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setscheduler/6-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
 
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setscheduler/7-1       || POSIX           || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
||sched_setscheduler/9-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
||sched_setscheduler/10-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====SIG====
||sched_setscheduler/11-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
||sched_setscheduler/12-1        || POSIX          || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/13-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| n/a || || || || ||  
|-
|}


|-
====SEM====
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/15-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| sem_init/7-1   || '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|-
Then return '''UNTESTED'''
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


|-
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||sched_setscheduler/17-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
||sched_setscheduler/17-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
It return UNTESTED, we don't need care it.
||sched_setscheduler/17-4      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_barrier_destroy_2-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
|-
|| pthread_barrier_wait_6-1 ||  || beaglebone genericx86-64 || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setscheduler/19-2     || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock/2-2 || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
||sched_setscheduler/19-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-1 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setscheduler/19-4      || Ignore      || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setscheduler/22-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}
|}


====MEM====
====TMR====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/13-1 || '''NEW''' || routerstation || conformance/interfaces/mmap/13-1: execution: FAILED ||   || n/a
|| clock_getcpuclockid/5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
   clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|-
|| mmap/11-4                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|}
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.


Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
====MSG====
 
The mapped page is cached. This case is not supported by Linux.
 
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|}
  Modification of the partial page
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.


shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==>  shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
====TPS====
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/27-1                    || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
|-
|-
|| mmap/28-1                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
  Test Fail: mmap/28-1.c Got no error at mmap()
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.
 
Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
 
This case is NOT supported by Linux.
|| n/a
 
|-
|-
|| mmap/31-1                   || POSIX || mpc8315e beagleboard sugarbay blacksand huronriver ||
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
 
Testing with user deamon (euid, uid) = (1, 1)
off: fffff000, len: fffff000
The function sched_getparam has successed.
 
||
expect EOVERFLOW but get other error: Cannot allocate memory
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
 
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
 
In the manual of sched_getparam about return value:
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
||
mpc8315e       0xc0000000
|-
routerstation  0x7fff8000UL
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
sugarbay      0xffff880000000000
Testing with user deamon (uid: 1)
    || n/a         
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
|| shm_open/2-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
|| shm_open/6-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/7-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/9-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/10-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/12-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/19-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/24-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   ||test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/29-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}


===1.4 M3 RC2 20130131 build===
====MEM====
'''Yocto 1.4 M3 RC2 20130131 build''' with POSIX test suite version '''20120903'''.
 
====AIO====
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard ||  
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.
 
eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
|-
 
|| aio_return/2-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
 
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
 
|| aio_return/3-2 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
 
|| aio_return/4-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
|| aio_error/3-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
  pa: 0x400fb000
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
||
|-
|| shm_open_23-1 || '''NEW''' || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_read/9-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
||
|-
|-
 
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_write/7-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| aio_suspend/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|| aio_suspend/5-1 || POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||  
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|}


|| aio_fsync/1-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||
===2.4 RC1 build===
'''''Stub Case'''''
'''Yocto 2.4 RC1 build''' with POSIX test suite version '''20170516'''.


Test case is not complete, and just return UNTESTED
====AIO====
|| N/A
|-


|| aio_fsync/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


|| aio_fsync/3-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED  ||
The POSIX spec says about aio_error:  
'''''Stub Case'''''
The aio_error( ) function may fail if:  
 
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
|| aio_fsync/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED ||  
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
'''''Stub Case'''''
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
 
In eglibc the return value is same as first return.
Test case is not complete, and just return UNTESTED
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|| N/A
|-
|-
 
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
|| aio_fsync/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED ||  
Same with aio_return/2-1
'''''Stub Case'''''
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED ||  
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
'''''Stub Case'''''
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
 
||
Test case is not complete, and just return UNTESTED
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|| N/A
|-
|-
 
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| aio_fsync/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
'''''Stub Case'''''
 
Test case is a stub
Test case is not complete, and just return UNTESTED
|| N/A
|-
 
 
|| aio_read/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED  ||
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
 
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| aio_read/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but const value 1024 is not enough
 
Same with aio_read/2-1
||
||
|-
|-
|}


|| aio_read/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||
====SIG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
|| N/A
|-


|| aio_read/13-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||  ||  ||
|-
|}


|| aio_read/14-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||
====SEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|| aio_read/15-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||
Then return '''UNTESTED'''
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
|| N/A
|-


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|| aio_write/4-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED  ||
It return UNTESTED, we don't need care it.
'''''Stub Case'''''


Test case is a stub
||
||
|-
|}


|| aio_write/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED  ||
====THR====
'''''Stub Case'''''


Test case is a stub
||
|-


|| aio_write/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED ||  
{|border="1"
'''''Stub Case'''''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
 
|-
Test case is a stub
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
|-
|| pthread_barrier_wait_6-1 || || beaglebone genericx86-64 || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|| aio_write/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
'''''Stub Case'''''
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
Test case is a stub
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| aio_write/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
|| lio_listio/16-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
 
|-
Test case is not complete, and just return UNTESTED
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|}


|| lio_listio/17-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED  ||
====TMR====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| clock_getcpuclockid/5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
|| lio_listio/19-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED ||  
  clock_getcpuclockid(1, ..) passed unexpectedly
'''''Stub Case'''''
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
Test case is not complete, and just return UNTESTED
||
||
|-
|-
|}


|| lio_listio/20-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED  ||
====MSG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| n/a || || ||  || ||  
|| lio_listio/21-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
|}


|| lio_listio/22-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED  ||
====TPS====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| lio_listio/23-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| lio_listio/24-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED ||
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
Test case is not complete, and just return UNTESTED
||  
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
 
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| lio_listio/25-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED ||
Testing with user deamon (uid: 1)
'''''Stub Case'''''
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Test case is a stub
||
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|}
|}


====SIG====
====MEM====
 
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||  ||
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
||
|}
 
====SEM====
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-|| '''Unsupported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   pa: 0x400fb000
   [17:07:31]File ../../../conformance/interfaces
   pa_2: 0x40115000
   /sem_init/7-1.c cannot test: There is no
   Modification of the partial page
   constraint on SEM_NSEMS_MAX
  at the end of an object is written out
 
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Then return '''UNTESTED'''
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
 
The mapped page is cached. This case is not supported by Linux.
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
 
||
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
 
It return UNTESTED([[Result Codes]]), we don't need care it.
 
|| n/a
|}
 
====THR====
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_broadcast/1-2  || '''Limitted to memory''' || routerstation mpc8315e blacksand || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| shm_open_23-1 || '''NEW''' || edgerouter || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|-
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||  
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
execution: HUNG
||
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
 
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block.  || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
||
||
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| pthread_rwlock_rdlock/2-2 || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block.  || See pthread_rwlock_rdlock/2-1 ||
||
 
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


====TMR====
===2.4 M2 RC3 build===
'''Yocto 2.4 M2 RC3 build''' with POSIX test suite version '''20170516'''.


{|border="1"
====AIO====
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| timer_getoverrun/3-1      || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || '''Stub Case'''


Just print something and then return UNTESTED
|| n/a
|-
|| clock_getcpuclockid/5-1    || '''Implement related'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
|| n/a
|}
====MSG====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1               || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED ||
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
'''Stub Case'''
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
 
Just print something and then return UNTESTED
|| n/a
|-  
 
|| mq_open/4-1               || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
|| mq_open/10-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
Just print something and then return UNTESTED
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
|| n/a
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
|-
|-
|| mq_open/14-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
Just print something and then return UNTESTED
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
|| n/a
In eglibc the return value is same as first return.
 
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| mq_open/17-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Just print something and then return UNTESTED
Same with aio_return/2-1
|| n/a
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
 
|-
|-
|| mq_open/22-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
Just print something and then return UNTESTED
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
|| n/a
||
 
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
Just print something and then return UNTESTED
'''''Stub Case'''''
|| n/a
Test case is a stub
 
||
|-
|-
|| mq_open/25-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
Just print something and then return UNTESTED
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
|| n/a
Test case try to overflow the aio queue, but const value 1024 is not enough
 
||
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|}
Just print something and then return UNTESTED
|| n/a


|-
====SIG====
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a


|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a


|-
||mq_timedsend/6-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||UNTESTED || '''Stub Case'''
|| n/a || || ||  || ||  
Just print something and then return UNTESTED
|-  
|| n/a
 
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
|}
|}


====TPS====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1         || '''Not Supported'''     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
|| sem_init/7-1   || '''Unsupported''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   Testing with user deamon (euid, uid) = (1, 1)
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   The function sched_getparam has successed.
   [17:07:31]File ../../../conformance/interfaces
||
  /sem_init/7-1.c cannot test: There is no
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.  
  constraint on SEM_NSEMS_MAX
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.


||
Then return '''UNTESTED'''


|-
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
||sched_getscheduler/7-1    || '''Not Supportted'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.


|| Similiar with sched_getparam/6-1
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
|| n/a


|-
It return UNTESTED, we don't need care it.


||sched_get_priority_max/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||
|}


|-
====THR====
||sched_get_priority_min/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getscheduler/2-1     || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
 
|-
|-
||sched_setparam/3-1         || POSIX          || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_barrier_wait_6-1 || || beaglebone genericx86-64 || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
 
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setparam/7-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
||sched_setparam/12-1 || Ignore      || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-1 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setparam/13-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setparam/14-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====TMR====
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/17-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| clock_getcpuclockid/5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|-
||sched_setparam/18-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


|-
====MSG====
||sched_setparam/19-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/20-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| n/a || || || || ||  
 
|-
|-
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|}


|-
====TPS====
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/23-2 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
|-
|-
|| sched_setparam/23-3       || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
|-
|-
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
 
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
 
Testing with user deamon (uid: 1)
 
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
|-
||sched_setparam/25-2      || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setparam/25-3      || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
 
|-
||sched_setscheduler/2-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
 
 
|-
|-
||sched_setscheduler/5-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setscheduler/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setscheduler/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setscheduler/9-1        || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setscheduler/10-1        || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setscheduler/11-1        || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setscheduler/12-1        || POSIX          || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setscheduler/13-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/15-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-2      || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-3      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-4      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-2      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-3      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-4      || Ignore     || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}
|}


Line 4,186: Line 4,179:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
   pa: 0x400fb000  
   pa: 0x400fb000  
   pa_2: 0x40115000  
   pa_2: 0x40115000  
Line 4,192: Line 4,189:
   at the end of an object is written out
   at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.  
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.  
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.  
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.  
The mapped page is cached. This case is not supported by Linux.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
|| n/a
||
 
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
  Modification of the partial page
||
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.
 
shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
|| n/a
 
|-
|-
|| mmap/27-1                    || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| mmap/28-1                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
  Test Fail: mmap/28-1.c Got no error at mmap()
||
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.  
 
Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
 
This case is NOT supported by Linux.
|| n/a
 
|-
|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay blacksand huronriver ||
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
off: fffff000, len: fffff000
 
expect EOVERFLOW but get other error: Cannot allocate memory
 
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
 
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         
 
|-
|| shm_open/2-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|-
|| shm_open/3-1 || POSIX ||  beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/6-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/7-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  ||  test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/9-1                || POSIX ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/10-1                || POSIX ||  beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/12-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/19-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/24-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  ||test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/29-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
 
|-
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}


===1.4 M3 RC1 20130122 build===
===2.4 M2 RC2 build===
'''Yocto 1.4 M3 RC1 20130122 build''' with POSIX test suite version '''20120903'''.
'''Yocto 2.4 M2 RC2 build''' with POSIX test suite version '''20170516'''.


====AIO====
====AIO====
Line 4,287: Line 4,217:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard ||  
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.  


eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
The POSIX spec says about aio_error:
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
|| aio_return/2-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
  aio_return() returned 111
||
||  
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
In eglibc the return value is same as first return.  
In eglibc the return value is same as first return.  
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
|| aio_return/3-2 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
|| aio_return/4-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
|| aio_error/3-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
'''''Stub Case'''''
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
|}


|| aio_read/9-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED  ||
====SIG====
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.


Test case try to overflow the aio queue, but not quit sure the critical value on different OS.


||
|-


|| aio_write/7-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
{|border="1"
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
 
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
|| n/a ||  ||  ||  ||  ||
|-
|}


|| aio_suspend/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED  ||
====SEM====
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_suspend/5-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||
|| sem_init/7-1   || '''Unsupported''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
'''''Stub Case'''''
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


Test case is a stub
Then return '''UNTESTED'''
||
|-


|| aio_fsync/1-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
|| N/A
|-


|| aio_fsync/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED ||
It return UNTESTED, we don't need care it.
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
|-
|}


|| aio_fsync/3-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED  ||
====THR====
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
|-


|| aio_fsync/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||  
{|border="1"
'''''Stub Case'''''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED  ||  
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_barrier_wait_6-1 || || beaglebone genericx86-64 || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
|| aio_fsync/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED ||  
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
'''''Stub Case'''''
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
Test case is not complete, and just return UNTESTED
||
|| N/A
|-
|-
 
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|| aio_fsync/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
'''''Stub Case'''''
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
||
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
|| aio_read/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED  ||  
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
|-
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}


|| aio_read/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||
====TMR====
'''''Stub Case'''''


Same with aio_read/2-1  
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
||
|-
|-
|}


|| aio_read/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||
====MSG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| n/a ||  || ||  || ||  
|| aio_read/13-1 ||POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|}


|| aio_read/14-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||
====TPS====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| aio_read/15-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
|| aio_write/4-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| aio_write/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED ||  
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
||  
Test case is a stub
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
||
|-
|-
 
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| aio_write/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED ||
Testing with user deamon (uid: 1)
'''''Stub Case'''''
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Test case is a stub
||
||
|-
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}


|| aio_write/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED  ||
====MEM====
'''''Stub Case'''''


Test case is a stub
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
||
|-
|-
 
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
|| aio_write/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED  ||  
  pa: 0x400fb000
'''''Stub Case'''''
  pa_2: 0x40115000
 
  Modification of the partial page
Test case is a stub
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
||
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| lio_listio/16-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| lio_listio/17-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/19-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/20-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
|}


|| lio_listio/21-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED ||  
===2.4 M1 RC1 build===
'''''Stub Case'''''
'''Yocto 2.4 M1 RC1 build''' with POSIX test suite version '''20170516'''.
 
====AIO====
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


Test case is not complete, and just return UNTESTED
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
|| lio_listio/22-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
|| lio_listio/23-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED ||  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
'''''Stub Case'''''
In eglibc the return value is same as first return.
 
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
Test case is not complete, and just return UNTESTED
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| lio_listio/24-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED  ||  
'''''Stub Case'''''
'''''Stub Case'''''
 
Test case is a stub
Test case is not complete, and just return UNTESTED
||
||  
|-
|-
 
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| lio_listio/25-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but const value 1024 is not enough
 
Test case is a stub
||
||
|-
|-
Line 4,557: Line 4,504:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||   ||  
|| n/a ||  ||  || ||  ||  
 
|-
||  
|}
|}


====SEM====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|| sem_init/7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
Line 4,580: Line 4,525:
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 4,591: Line 4,536:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e blacksand || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| pthread_barrier_destroy_2-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
|-
|| pthread_barrier_wait_6-1 ||  || beaglebone || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|-
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||
execution: HUNG
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
 
|-
 
|| pthread_rwlock_rdlock/2-1  || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block.  || See pthread_rwlock_rdlock/2-1 ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
 
||
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
|-
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 4,623: Line 4,569:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_getoverrun/3-1      || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || '''Stub Case'''
|| clock_getcpuclockid/5-1    || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
   clock_getcpuclockid(1, ..) passed unexpectedly  
   clock_getcpuclockid(1, ..) passed unexpectedly  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
 
|-
 
|| n/a
|}
|}


Line 4,645: Line 4,582:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED ||  
|| n/a ||  || || || ||  
'''Stub Case'''
|-
|}


Just print something and then return UNTESTED
====TPS====
|| n/a
|-
 
|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_open/10-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/14-1              || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/17-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Just print something and then return UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
|| n/a
The function sched_getparam has successed.
 
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
|| mq_open/22-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Just print something and then return UNTESTED
Testing with user deamon (uid: 1)
|| n/a
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
||
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/25-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/6-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||UNTESTED  || '''Stub Case'''
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
|}
 
====TPS====
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1        || '''Not Supported'''      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
  Testing with user deamon (euid, uid) = (1, 1)
  The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
 
||
 
|-
|-
||sched_getscheduler/7-1    || '''Not Supportted'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
|| n/a
 
|-
|-
 
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
||sched_get_priority_max/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
|-
||sched_get_priority_min/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
 
|-
|-
||sched_getscheduler/2-1    || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/3-1         || POSIX          || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/12-1 || Ignore     || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/13-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/14-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====MEM====
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/17-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
||sched_setparam/18-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
||sched_setparam/19-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/20-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/21-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/21-2       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
===2.3 RC2 build===
|| sched_setparam/23-3       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
'''Yocto 2.3 RC2 build''' with POSIX test suite version '''20170116'''.


|-
====AIO====
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/25-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
 
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|-
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
||sched_setscheduler/2-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


====SIG====


|-
||sched_setscheduler/5-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| n/a || || || || ||  
|-
|}


====SEM====


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/7-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| sem_init/7-1   || '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


Then return '''UNTESTED'''


|-
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||sched_setscheduler/9-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
||sched_setscheduler/10-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
It return UNTESTED, we don't need care it.
||sched_setscheduler/11-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
||
||sched_setscheduler/12-1        || POSIX          || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


====THR====


|-
||sched_setscheduler/13-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/14-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
 
|-
|-
||sched_setscheduler/15-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_barrier_wait_6-1 || || mpc8315e beaglebone || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
 
|-
|-
||sched_setscheduler/15-2       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setscheduler/17-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setscheduler/17-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
||sched_setscheduler/17-4      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-1 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setscheduler/19-2     || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setscheduler/19-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
|-
||  
||sched_setscheduler/19-4      || Ignore      || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
 
|-
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}
|}


====MEM====
====TMR====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| clock_getcpuclockid/5-1    || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  pa: 0x400fb000
   clock_getcpuclockid(1, ..) passed unexpectedly
  pa_2: 0x40115000
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
   Modification of the partial page
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
  at the end of an object is written out
||
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
 
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.  
 
The mapped page is cached. This case is not supported by Linux.
 
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
|| n/a
 
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|}
  Modification of the partial page
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.


shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==>  shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
====MSG====
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/27-1                    || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
|| n/a || || ||  || ||  
 
|-
|-
|| mmap/28-1                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|}
  Test Fail: mmap/28-1.c Got no error at mmap()
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.


Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
====TPS====
 
This case is NOT supported by Linux.
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay blacksand huronriver ||
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
off: fffff000, len: fffff000
 
expect EOVERFLOW but get other error: Cannot allocate memory
 
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
 
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         
 
|-
|-
|| shm_open/2-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
 
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
|| shm_open/6-1                 || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|| shm_open/7-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/9-1                || POSIX ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
====MEM====
|| shm_open/10-1                || POSIX ||  beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/12-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
|| shm_open/19-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
   at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
|| shm_open/24-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   ||test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/29-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}


===1.4 M1 RC1 20121128 build===
===2.3 M3 RC2 build===
'''Yocto 1.4 M1 RC1 20121128 build''' with POSIX test suite version '''20120903'''.
'''Yocto 2.3 M3 RC2 build''' with POSIX test suite version '''20170116'''.


====AIO====
====AIO====
Line 4,994: Line 4,937:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard ||  
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.  


eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
The POSIX spec says about aio_error:
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
|| aio_return/2-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
  aio_return() returned 111
||
||  
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
In eglibc the return value is same as first return.  
In eglibc the return value is same as first return.  
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
|| aio_return/3-2 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
|| aio_return/4-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| aio_error/3-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
'''''Stub Case'''''
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
Test case is a stub
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| aio_read/9-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
|-
 
|| aio_write/7-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
|-
|-
|}
====SIG====


|| aio_suspend/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is a stub
||
|-
|| aio_suspend/5-1 || POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||  ||  ||
|-
|}


|| aio_fsync/1-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||
====SEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|| aio_fsync/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||
Then return '''UNTESTED'''
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||
|-


|| aio_fsync/3-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED ||
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
'''''Stub Case'''''
 
It return UNTESTED, we don't need care it.


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
|-
|}


|| aio_fsync/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||
====THR====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
|| N/A
|-
|| aio_fsync/7-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
|| aio_fsync/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED  ||  
|| pthread_barrier_wait_6-1 || || mpc8315e beaglebone || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| aio_fsync/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
'''''Stub Case'''''
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
 
||
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
|| aio_read/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED  ||  
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| aio_read/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
 
Same with aio_read/2-1  
||
||
|-
|-
 
|| pthread_rwlock_unlock_4-1 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
|| aio_read/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
|| aio_read/13-1 ||POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
|| aio_read/14-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||  
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
||  
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|}


|| aio_read/15-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||
====TMR====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| clock_getcpuclockid/5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
|| aio_write/4-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED  ||  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
'''''Stub Case'''''
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
 
Test case is a stub
||
||
|-
|-
|}


|| aio_write/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED  ||
====MSG====
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||  
|-
|-
|}


|| aio_write/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED  ||
====TPS====
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| aio_write/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|| aio_write/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| lio_listio/16-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED ||  
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
||  
Test case is not complete, and just return UNTESTED
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
||
|-
|-
 
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| lio_listio/17-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED ||
Testing with user deamon (uid: 1)
'''''Stub Case'''''
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/19-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/20-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/21-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/22-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| lio_listio/23-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|| lio_listio/24-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
 
|-
Test case is not complete, and just return UNTESTED
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
||  
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
 
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| lio_listio/25-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
|}
|}


====SIG====
====MEM====
 
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||   ||  
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}


||
===2.3 M2 RC3 build===
|}
'''Yocto 2.3 M2 RC3 build''' with POSIX test suite version '''20160126'''.


====SEM====
====AIO====




Line 5,275: Line 5,177:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
 
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
 
====SIG====
 
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
 
====SEM====
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
   /sem_init/7-1.c cannot test: There is no  
   /sem_init/7-1.c cannot test: There is no  
Line 5,287: Line 5,245:
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 5,298: Line 5,256:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_create/14-1         || '''NEW'''    || routerstationpro || conformance/interfaces/pthread_create/14-1: execution: SIGNALED
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
||  || n/a
|-
 
|| pthread_barrier_wait_6-1 ||  || mpc8315e beaglebone || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
|-
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e blacksand || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
|-
|-
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||  
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
execution: HUNG
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
||
 
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
|-
|-
 
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
|| pthread_rwlock_rdlock/2-1  || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block.  || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
||
|-
|-
 
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. || See pthread_rwlock_rdlock/2-1 ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
 
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 5,334: Line 5,289:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_getoverrun/3-1      || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || '''Stub Case'''
|| clock_getcpuclockid/5-1    || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
   clock_getcpuclockid(1, ..) passed unexpectedly  
   clock_getcpuclockid(1, ..) passed unexpectedly  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
 
|-
 
|| n/a
|}
|}


Line 5,356: Line 5,302:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED ||  
|| n/a ||  || || || ||  
'''Stub Case'''
|-
|}


Just print something and then return UNTESTED
====TPS====
|| n/a
|-
 
|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|| mq_open/10-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Just print something and then return UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
|| n/a
The function sched_getparam has successed.
 
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
|| mq_open/14-1             || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Just print something and then return UNTESTED
Testing with user deamon (uid: 1)
|| n/a
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
||
|-
|-
|| mq_open/17-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/22-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/24-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/25-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/6-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||UNTESTED  || '''Stub Case'''
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
|}
 
====TPS====
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1        || '''Not Supported'''      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
  Testing with user deamon (euid, uid) = (1, 1)
  The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
 
||
 
|-
|-
||sched_getscheduler/7-1    || '''Not Supportted'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
|| n/a
 
|-
|-
 
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
||sched_get_priority_max/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
|-
||sched_get_priority_min/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
 
|-
|-
||sched_getscheduler/2-1    || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/3-1        || POSIX          || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/8-1       || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/12-1 || Ignore     || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/13-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====MEM====
||sched_setparam/14-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| munmap_2-1 || || genericx86-64 beaglebone mpc8315e edgerouter || conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED || ||
 
|-
|-
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
||sched_setparam/17-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
||sched_setparam/18-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/19-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/20-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|}


|-
===2.3 M1 RC1 build===
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
'''Yocto 2.3 M1 RC1 build''' with POSIX test suite version '''20160126'''.


|-
====AIO====
|| sched_setparam/23-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
 
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
||sched_setparam/25-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


====SIG====


|-
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || || || || ||  
|-
|}


====SEM====


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/2-1           || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| sem_init/7-1   || '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


Then return '''UNTESTED'''


|-
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||sched_setscheduler/5-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|-
It return UNTESTED, we don't need care it.
||sched_setscheduler/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


||
|}


|-
====THR====
||sched_setscheduler/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/9-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
 
|-
|-
||sched_setscheduler/10-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_barrier_wait_6-1 || || mpc8315e beaglebone || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
 
|-
|-
||sched_setscheduler/11-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setscheduler/12-1       || POSIX          || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setscheduler/13-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
||sched_setscheduler/14-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_unlock_4-1 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setscheduler/15-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
||sched_setscheduler/17-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====TMR====
||sched_setscheduler/17-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/17-4      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| clock_getcpuclockid/5-1    || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|-
||sched_setscheduler/19-2      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====MSG====
||sched_setscheduler/19-3      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/19-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || ||  || || ||  
 
|-
|-
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}
|}


====MEM====
====TPS====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
 
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
 
The mapped page is cached. This case is not supported by Linux.
 
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
|| n/a
 
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
  Modification of the partial page
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.
 
shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==>  shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
|| n/a
 
|-
|-
|| mmap/27-1                    || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
|-
|-
|| mmap/28-1                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
  Test Fail: mmap/28-1.c Got no error at mmap()
Testing with user deamon (euid, uid) = (1, 1)
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.  
The function sched_getparam has successed.
 
||  
Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
 
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
This case is NOT supported by Linux.
For default security operations, security_task_getscheduler() is a stub function and just return 0.  
|| n/a
In the manual of sched_getparam about return value:
 
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay blacksand huronriver ||
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
off: fffff000, len: fffff000
 
expect EOVERFLOW but get other error: Cannot allocate memory
 
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
 
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         
 
|-
|-
|| shm_open/2-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
|| shm_open/6-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/7-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/9-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/10-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/12-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/19-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/24-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   ||test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/29-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}


===1.3 M5 RC4 20121010 build===
====MEM====
'''Yocto 1.3 M5 RC4 20121010 build''' with POSIX test suite version '''20120903'''.
 
====AIO====
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard ||
|| munmap_2-1 ||  || genericx86-64 beaglebone mpc8315e edgerouter || conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED || ||
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
  lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.
 
eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
|-
 
|| aio_return/2-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
 
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
 
|| aio_return/3-2 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
|| aio_return/4-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
|| aio_error/3-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
  pa: 0x400fb000
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_read/9-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
||
|-
|-
 
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_write/7-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but const value 1024 is not enough
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| aio_suspend/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|| aio_suspend/5-1 || POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||  
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
|}


|| aio_fsync/1-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||
===2.2 RC4 build===
'''''Stub Case'''''
'''Yocto 2.2 RC4 build''' with POSIX test suite version '''20160126'''.


Test case is not complete, and just return UNTESTED
====AIO====
|| N/A
|-


|| aio_fsync/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||
'''''Stub Case'''''


The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


|| aio_fsync/3-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED  ||
The POSIX spec says about aio_error:  
'''''Stub Case'''''
The aio_error( ) function may fail if:  
 
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
|| aio_fsync/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED ||  
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
'''''Stub Case'''''
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
 
In eglibc the return value is same as first return.
Test case is not complete, and just return UNTESTED
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|| N/A
|-
|-
 
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
|| aio_fsync/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED ||  
Same with aio_return/2-1
'''''Stub Case'''''
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED ||  
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
'''''Stub Case'''''
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
 
||
Test case is not complete, and just return UNTESTED
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|| N/A
|-
|-
 
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| aio_fsync/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
'''''Stub Case'''''
 
Test case is a stub
Test case is not complete, and just return UNTESTED
|| N/A
|-
 
 
|| aio_read/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED  ||
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
||
|-
|-
 
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| aio_read/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but const value 1024 is not enough
 
Same with aio_read/2-1
||
||
|-
|-
|}


|| aio_read/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||
====SIG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
|| N/A
|-


|| aio_read/13-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||  ||  ||
|-
|}


|| aio_read/14-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||
====SEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|| aio_read/15-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||
Then return '''UNTESTED'''
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
|| N/A
|-


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|| aio_write/4-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED  ||
It return UNTESTED, we don't need care it.
'''''Stub Case'''''


Test case is a stub
||
||
|-
|}
 
====THR====


|| aio_write/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is a stub
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| pthread_barrier_destroy_2-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
|| aio_write/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
|| pthread_barrier_wait_6-1 || || mpc8315e beaglebone || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
 
|-
Test case is a stub
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|| aio_write/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
'''''Stub Case'''''
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
Test case is a stub
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| aio_write/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED  ||  
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| pthread_rwlock_unlock_4-1 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
|| lio_listio/16-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
 
Test case is not complete, and just return UNTESTED
||
|-
|-
 
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
|| lio_listio/17-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED  ||  
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
'''''Stub Case'''''
||  
 
Test case is not complete, and just return UNTESTED
||
|-
|-
|}


|| lio_listio/19-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED  ||
====TMR====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| clock_getcpuclockid/5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
|| lio_listio/20-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED ||  
  clock_getcpuclockid(1, ..) passed unexpectedly
'''''Stub Case'''''
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
Test case is not complete, and just return UNTESTED
||
||
|-
|-
|}


|| lio_listio/21-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||
====MSG====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| n/a || || ||  || ||  
|| lio_listio/22-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
|-
|-
|}


|| lio_listio/23-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED  ||
====TPS====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| lio_listio/24-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
|-
Test case is not complete, and just return UNTESTED
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||  
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
 
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| lio_listio/25-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED ||
Testing with user deamon (uid: 1)
'''''Stub Case'''''
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Test case is a stub
||
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|}
|}


====SIG====
====MEM====
 
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  || ||   ||  
|| munmap_2-1 ||  || genericx86-64 beaglebone mpc8315e edgerouter || conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED || ||
 
|-
||  
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
|}
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
 
||
====SEM====
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-|| '''Unsupported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   pa: 0x400fb000
   [17:07:31]File ../../../conformance/interfaces
   pa_2: 0x40115000
   /sem_init/7-1.c cannot test: There is no
   Modification of the partial page
   constraint on SEM_NSEMS_MAX
  at the end of an object is written out
 
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Then return '''UNTESTED'''
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
 
The mapped page is cached. This case is not supported by Linux.
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
 
||
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
 
It return UNTESTED([[Result Codes]]), we don't need care it.
 
|| n/a
|}
 
====THR====
 
 
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_broadcast/1-2  || '''Limitted to memory''' || routerstation mpc8315e blacksand || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
 
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
||
|-
|-
|| pthread_detach/4-|| Fixed || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|-
|| pthread_create/1-6        || POSIX    || beagleboard routerstation mpc8315e ||  
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
execution: HUNG
||
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
 
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| pthread_rwlock_rdlock/2-1  || Unsupport by eglibc    || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block.  || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
 
||
||
|-
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block.  || See pthread_rwlock_rdlock/2-1 ||
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| timer_getoverrun/3-1      || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
|-


|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
===2.2 M3 RC1 build===
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
'''Yocto 2.2 M3 RC1 build''' with POSIX test suite version '''20160126'''.
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.


This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
====AIO====


|| n/a
|}
====MSG====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1               || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED ||
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
'''Stub Case'''
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
 
Just print something and then return UNTESTED
|| n/a
|-  
 
|| mq_open/4-1               || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
|| mq_open/10-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
Just print something and then return UNTESTED
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
|| n/a
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
|-
|-
|| mq_open/14-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
Just print something and then return UNTESTED
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
|| n/a
In eglibc the return value is same as first return.
 
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| mq_open/17-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Just print something and then return UNTESTED
Same with aio_return/2-1
|| n/a
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
 
|-
|-
|| mq_open/22-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
Just print something and then return UNTESTED
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
|| n/a
||
 
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
Just print something and then return UNTESTED
'''''Stub Case'''''
|| n/a
Test case is a stub
 
||
|-
|-
|| mq_open/25-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
Just print something and then return UNTESTED
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
|| n/a
Test case try to overflow the aio queue, but const value 1024 is not enough
 
||
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
|}
Just print something and then return UNTESTED
|| n/a


|-
====SIG====
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a


|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a


|-
||mq_timedsend/6-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||UNTESTED || '''Stub Case'''
|| n/a || || ||  || ||  
Just print something and then return UNTESTED
|-  
|| n/a
 
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
|}
|}


====TPS====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1         || '''Not Supported'''     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
|| sem_init/7-1   || '''Unsupported''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   Testing with user deamon (euid, uid) = (1, 1)
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   The function sched_getparam has successed.
   [17:07:31]File ../../../conformance/interfaces
||
  /sem_init/7-1.c cannot test: There is no
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.  
  constraint on SEM_NSEMS_MAX
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.


||
Then return '''UNTESTED'''


|-
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.  
||sched_getscheduler/7-1    || '''Not Supportted'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.


|| Similiar with sched_getparam/6-1
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
|| n/a


|-
It return UNTESTED, we don't need care it.


||sched_get_priority_max/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||
|}


|-
====THR====
||sched_get_priority_min/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getscheduler/2-1     || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_barrier_destroy_2-1 || || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
 
|-
|-
||sched_setparam/3-1         || POSIX          || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_barrier_wait_6-1 || || mpc8315e beaglebone || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
 
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setparam/7-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
||sched_setparam/12-1 || Ignore      || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-1 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setparam/13-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
 
|-
|-
||sched_setparam/14-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====TMR====
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/17-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| clock_getcpuclockid/5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|-
||sched_setparam/18-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


|-
====MSG====
||sched_setparam/19-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/20-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| n/a || || || || ||  
 
|-
|-
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|}


|-
====TPS====
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/23-2 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
|-
|-
|| sched_setparam/23-3       || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
 
|-
|-
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
 
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
 
Testing with user deamon (uid: 1)
 
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
|-
||sched_setparam/25-2      || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setparam/25-3      || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setparam/25-4      || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setscheduler/2-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
||sched_setscheduler/5-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
 
 
|-
||sched_setscheduler/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
 
 
|-
|-
||sched_setscheduler/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setscheduler/9-1        || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setscheduler/10-1        || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setscheduler/11-1        || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setscheduler/12-1        || POSIX          || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
 
|-
|-
||sched_setscheduler/13-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/15-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-2      || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-3      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/17-4      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-2      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-3      || Ignore     || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/19-4      || Ignore     || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}
|}


Line 6,311: Line 6,106:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| munmap_2-1 ||  || genericx86-64 beaglebone mpc8315e edgerouter || conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED || ||
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
   pa: 0x400fb000  
   pa: 0x400fb000  
   pa_2: 0x40115000  
   pa_2: 0x40115000  
Line 6,317: Line 6,118:
   at the end of an object is written out
   at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.  
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.  
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.  
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.  
The mapped page is cached. This case is not supported by Linux.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.  
  || n/a
||
 
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
  Modification of the partial page
||
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.
 
shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
|| n/a
 
|-
|-
|| mmap/27-1                    || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| mmap/28-1                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|}
  Test Fail: mmap/28-1.c Got no error at mmap()
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.


Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
===2.2 M2 RC1 build===
'''Yocto 2.2 M2 RC1 build''' with POSIX test suite version '''20160126'''.


This case is NOT supported by Linux.
====AIO====
|| n/a


|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay blacksand huronriver ||
off: fffff000, len: fffff000
expect EOVERFLOW but get other error: Cannot allocate memory
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/2-1                 || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_error/2-1 || || edgerouter || conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED || ||
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
|| shm_open/6-1                 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|-
|| shm_open/7-1                 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
 
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| shm_open/9-1                || POSIX ||  beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
 
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| shm_open/10-1                 || POSIX ||  beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|| shm_open/12-1                 || POSIX ||  beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_suspend/5-1 || POSIX || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
Test case is a stub
||
|-
|-
|| shm_open/19-1                 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
|| shm_open/24-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  ||test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
====SIG====
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


|-
|| shm_open/29-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/42-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| n/a || ||  || || ||  
|-
|}
|}


====SEM====


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


===1.3 M5 RC3 20121003 build===
Then return '''UNTESTED'''


====AIO====
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
 
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
 
It return UNTESTED, we don't need care it.
 
||
|}
 
====THR====




Line 6,413: Line 6,227:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_fsync/5-1 || '''NEW''' || routerstation || conformance/interfaces/aio_fsync/5-1: execution: UNTESTED ||  
|| pthread_barrier_destroy_2-1 ||  || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG || ||
|| N/A
|-
|| pthread_barrier_wait_6-1 ||  || mpc8315e beaglebone || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED || ||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
|| aio_cancel/7-1 || '''NEW''' || routerstation || conformance/interfaces/aio_cancel/7-1: execution: UNRESOLVED ||
|| pthread_rwlock_unlock_4-1 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED || ||
||  
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard ||  
|| pthread_rwlock_unlock_4-2 || || genericx86-64 mpc8315e edgerouter beaglebone || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED || ||
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.
 
eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
|-
|-
 
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
|| aio_return/2-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||  
||  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
|}


|| aio_return/3-2 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
====TMR====
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-


|| aio_return/4-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
{|border="1"
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| clock_getcpuclockid/5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
|| aio_error/3-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
  clock_getcpuclockid(1, ..) passed unexpectedly
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
|}


|| aio_read/9-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED  ||
====MSG====
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.


Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
{|border="1"
 
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
||
|-
|| n/a ||  ||  ||  || ||  
|-
|-
|}


|| aio_write/7-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||
====TPS====
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.


Test case try to overflow the aio queue, but const value 1024 is not enough
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
|-
|-
 
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| aio_suspend/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED ||  
Testing with user deamon (euid, uid) = (1, 1)
'''''Stub Case'''''
The function sched_getparam has successed.
 
||  
Test case is a stub  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
||
|-
|-
|| aio_suspend/5-1 || POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED  ||
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
'''''Stub Case'''''
Testing with user deamon (uid: 1)
 
The function sched_getscheduler has successed.
Test case is a stub
|| Similiar with sched_getparam/6-1
||
||
|-
|-
 
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_fsync/1-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_fsync/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
|-
|-
 
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_fsync/3-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
|-
|-
 
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_fsync/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED  ||  
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_fsync/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED  ||  
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_fsync/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|| aio_read/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED ||  
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
|-
|-
 
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_read/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Same with aio_read/2-1
||
|-
|-
 
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_read/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_read/13-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
Test case is not complete, and just return UNTESTED
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| N/A
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|}


|| aio_read/14-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||
====MEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
 
|| munmap_2-1 || || genericx86-64 beaglebone mpc8315e edgerouter || conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED || ||
|| aio_read/15-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
|| aio_write/4-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
|| aio_write/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED  ||  
  pa: 0x400fb000
'''''Stub Case'''''
  pa_2: 0x40115000
 
  Modification of the partial page
Test case is a stub
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
||
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_write/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_write/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| aio_write/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/16-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
|}


|| lio_listio/17-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED  ||
===2.0 RC3 build===
'''''Stub Case'''''
'''Yocto 2.0 RC3 build''' with POSIX test suite version '''20150420'''.


Test case is not complete, and just return UNTESTED
====AIO====
||
|-


|| lio_listio/19-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


|| lio_listio/20-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED  ||
The POSIX spec says about aio_error:  
'''''Stub Case'''''
The aio_error( ) function may fail if:  
 
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
Test case is not complete, and just return UNTESTED
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
|| lio_listio/21-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
|| lio_listio/22-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED ||  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
'''''Stub Case'''''
In eglibc the return value is same as first return.
 
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
Test case is not complete, and just return UNTESTED
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| lio_listio/23-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED  ||  
'''''Stub Case'''''
'''''Stub Case'''''
 
Test case is a stub
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| lio_listio/24-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED  ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but const value 1024 is not enough
 
Test case is not complete, and just return UNTESTED
||  
|-
 
|| lio_listio/25-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
Line 6,689: Line 6,437:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sigtimedwait/1-1 || '''NEW''' ||  || conformance/interfaces/sigtimedwait/1-1: execution: FAILED  ||  
|| n/a || ||  || ||  ||  
 
|-
||
|}
|}


====SEM====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|| sem_init/7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
Line 6,712: Line 6,458:
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 6,723: Line 6,469:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_cond_broadcast/1-2 || '''NEW''' || routerstation mpc8315e || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED || ||
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
|| pthread_detach/4-|| || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
|-
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
|| pthread_create/1-6         || POSIX    || beagleboard routerstation mpc8315e ||
||  
execution: HUNG  
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
 
|-
|-
 
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc   || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block.  || See pthread_rwlock_rdlock/2-1 ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
 
||
|-
|| pthread_rwlock_unlock_4-1 || || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 6,751: Line 6,502:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_getoverrun/3-1      || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || '''Stub Case'''
|| clock_getcpuclockid/5-1    || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
   clock_getcpuclockid(1, ..) passed unexpectedly  
   clock_getcpuclockid(1, ..) passed unexpectedly  
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
 
|-
 
|| n/a
|}
|}


Line 6,773: Line 6,515:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED ||
|| n/a || ||  ||  || ||  
'''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_open/10-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_open/14-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_open/17-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_open/22-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_open/24-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_open/25-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
||mq_timedsend/6-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
|}
|}


Line 6,851: Line 6,524:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1         || '''Not Supported'''     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
  Testing with user deamon (euid, uid) = (1, 1)
|-
  The function sched_getparam has successed.
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||  
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.  
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.  
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.  
For default security operations, security_task_getscheduler() is a stub function and just return 0.
For default security operations, security_task_getscheduler() is a stub function and just return 0.  
 
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
||
|-
|-
||sched_getscheduler/7-1     || '''Not Supportted'''   || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
|| Similiar with sched_getparam/6-1
|| n/a
||
 
|-
|-
 
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
||sched_get_priority_max/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
|-
||sched_get_priority_min/1-3 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
 
|-
 
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
||sched_getscheduler/2-1    || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setparam/3-1        || POSIX          || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setparam/7-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
|-
||sched_setparam/12-1 || Ignore     || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/13-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/14-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/15-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/16-1 || Ignore     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/17-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/18-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/19-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/20-1       || Ignore       || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/21-1        || Ignore       || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|}


|-
====MEM====
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sched_setparam/23-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
||sched_setparam/23-4       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
 
|-
|-
||sched_setparam/25-2       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
 
|-
|-
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
 
|-
|-
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
 
|-
|-
||sched_setscheduler/2-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


===2.0 RC2 build===
'''Yocto 2.0 RC2 build''' with POSIX test suite version '''20150420'''.


|-
====AIO====
||sched_setscheduler/5-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/6-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
 
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
||sched_setscheduler/7-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|-
||sched_setscheduler/9-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
 
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setscheduler/10-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
 
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setscheduler/11-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setscheduler/12-1       || POSIX           || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_suspend/5-1 || POSIX || genericx86-64 mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
||sched_setscheduler/13-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


|-
====SIG====
||sched_setscheduler/15-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


|-
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


|-
||sched_setscheduler/17-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/17-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || ||  || || ||  
|-
|}


|-
====SEM====
||sched_setscheduler/17-4      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/19-2      || Ignore      ||  beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| sem_init/7-||  '''Unsupported''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


|-
Then return '''UNTESTED'''
||sched_setscheduler/19-3      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||sched_setscheduler/19-4      || Ignore      || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
 
It return UNTESTED, we don't need care it.


|-
||
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}
|}


====MEM====
====THR====
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/3-|| '''New''' || beagleboard || conformance/interfaces/mmap/3-1: execution: FAILED  ||   || n/a
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
|| mmap/11-4                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
  pa: 0x400fb000
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
  pa_2: 0x40115000
||  
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
 
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
 
The mapped page is cached. This case is not supported by Linux.
 
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
|| n/a
 
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
  Modification of the partial page
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
  at the end of an object is written out
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
|| Same with mmap/11-4, and this case test share memory instead of regular file.
||
 
shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==>  shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.  
|| n/a
 
|-
|-
|| mmap/27-1                    || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED  || n/a
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|-
|| mmap/28-1                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
|| pthread_rwlock_unlock_4-1 || || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
  Test Fail: mmap/28-1.c Got no error at mmap()
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.
 
Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
 
This case is NOT supported by Linux.
|| n/a
 
|-
|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay blacksand huronriver ||
|| pthread_rwlock_unlock_4-2 || || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
 
off: fffff000, len: fffff000
 
expect EOVERFLOW but get other error: Cannot allocate memory
 
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
 
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         
 
|-
|-
|| shm_open/2-1                 || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| shm_open/3-1 || POSIX ||  beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
====TMR====
|| shm_open/6-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/7-1                 || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || ||  test code just return PTS_UNTESTED and do nothing || n/a
|| clock_getcpuclockid/5-1   || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.'''".
||
|-
|-
|| shm_open/9-1                 || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||clock_settime_8-1 || NEW || beaglebone || conformance/interfaces/clock_settime/clock_settime_8-1: execution: FAILED || ||  
 
|-
|-
|| shm_open/10-1                || POSIX ||  beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
====MSG====
|| shm_open/12-1                || POSIX ||  beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/19-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| n/a || ||  || || ||  
 
|-
|-
|| shm_open/24-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  ||test code just return PTS_UNTESTED and do nothing || n/a
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|-
|| shm_open/29-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|-
|| shm_open/36-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}


===1.3 M4 RC3 20120916 build===
====TPS====
 
====AIO====
 


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_error/2-1 || '''NEW''' || routerstation || conformance/interfaces/aio_error/2-1: execution: UNRESOLVED ||
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
||  
|-
|-
|| lio_listio/11-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard ||  
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
conformance/interfaces/lio_listio/11-1: execution: '''FAILED'''
lio_listio/11-1.c Error lio_listio() should have returned -1
||  
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"
but it does not say what should happen if the value it not one of the above.
 
eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2660 Yocto 2660]
|-
|-
 
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
|| aio_return/2-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
Testing with user deamon (euid, uid) = (1, 1)
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
The function sched_getparam has successed.
aio_return() returned 111
||  
||  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
 
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
In eglibc the return value is same as first return.  
For default security operations, security_task_getscheduler() is a stub function and just return 0.  
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
 
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
|| aio_return/3-2 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNRESOLVED  ||
Testing with user deamon (uid: 1)
Same with aio_return/2-1
The function sched_getscheduler has successed.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|| Similiar with sched_getparam/6-1
||
|-
|-
 
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_return/4-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNRESOLVED  ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_error/3-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNRESOLVED ||  
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_read/9-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNRESOLVED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
||
|-
|-
 
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_write/7-1 || '''Not A Bug''' || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNRESOLVED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
 
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
 
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|| aio_suspend/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/2-1: execution: UNTESTED  ||  
|-
'''''Stub Case'''''
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
 
|-
Test case is a stub
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
||
|-
|-
|| aio_suspend/5-1 || POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
'''''Stub Case'''''
 
Test case is a stub
||
|-
|-
 
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_fsync/1-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/1-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
|| aio_fsync/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/2-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
|-
|-
 
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_fsync/3-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/3-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
||
|-
|-
 
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_fsync/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/6-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/7-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/7-1: execution: UNTESTED  ||  
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_fsync/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/10-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|| aio_fsync/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/11-1: execution: UNTESTED  ||  
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_fsync/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_fsync/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|| aio_read/2-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED ||  
'''''Stub Case'''''
 
Just test _SC_ASYNCHRONOUS_IO value.
||
|-
|-
 
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_read/6-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/6-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Same with aio_read/2-1
||
|-
|-
 
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_read/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/12-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|| aio_read/13-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/13-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
|}


|| aio_read/14-1 ||POSIX  || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/14-1: execution: UNTESTED  ||
====MEM====
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
|| N/A
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
 
|| aio_read/15-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/15-1: execution: UNTESTED  ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
|| N/A
|-
|-
 
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
|| aio_write/4-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
|| aio_write/10-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/10-1: execution: UNTESTED  ||  
  pa: 0x400fb000
'''''Stub Case'''''
  pa_2: 0x40115000
 
  Modification of the partial page
Test case is a stub
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
||
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_write/11-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/11-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
|| aio_write/12-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/12-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| aio_write/13-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/13-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is a stub
||
||
|-
|-
 
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
|| lio_listio/16-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/16-1: execution: UNTESTED ||  
'''''Stub Case'''''
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
|}


|| lio_listio/17-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/17-1: execution: UNTESTED  ||
'''''Stub Case'''''
Test case is not complete, and just return UNTESTED
||
|-


|| lio_listio/19-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/19-1: execution: UNTESTED  ||
===1.9 M3 RC1 build===
'''''Stub Case'''''
'''Yocto 1.9 M3 RC1 build''' with POSIX test suite version '''20150420'''.


Test case is not complete, and just return UNTESTED
====AIO====
||
|-


|| lio_listio/20-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/20-1: execution: UNTESTED  ||
'''''Stub Case'''''


Test case is not complete, and just return UNTESTED
{|border="1"
||
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


|| lio_listio/21-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/21-1: execution: UNTESTED  ||
The POSIX spec says about aio_error:  
'''''Stub Case'''''
The aio_error( ) function may fail if:  
 
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
Test case is not complete, and just return UNTESTED
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
 
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
|| lio_listio/22-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/22-1: execution: UNTESTED  ||  
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
 
Test case is not complete, and just return UNTESTED
||
||
|-
|-
 
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
|| lio_listio/23-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/23-1: execution: UNTESTED ||  
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
'''''Stub Case'''''
In eglibc the return value is same as first return.
 
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
Test case is not complete, and just return UNTESTED
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
 
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
|| lio_listio/24-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/24-1: execution: UNTESTED  ||  
'''''Stub Case'''''
'''''Stub Case'''''
 
Test case is a stub
Test case is not complete, and just return UNTESTED
||
||  
|-
|-
 
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
|| lio_listio/25-1 || POSIX || sugarbay blacksand huronriver mpc8315e routerstation beagleboard || conformance/interfaces/lio_listio/25-1: execution: UNTESTED  ||  
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
'''''Stub Case'''''
Test case try to overflow the aio queue, but const value 1024 is not enough
 
Test case is a stub
||
||
|-
|-
Line 7,391: Line 6,914:


====SIG====
====SIG====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| n/a ||  ||  ||   ||  
|| n/a ||  ||  || ||  ||  
 
|-
||  
|}
|}


====SEM====
====SEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
|| sem_init/7-1  ||  '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
   [17:07:31]File ../../../conformance/interfaces
   [17:07:31]File ../../../conformance/interfaces
Line 7,418: Line 6,941:
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


It return UNTESTED([[Result Codes]]), we don't need care it.
It return UNTESTED, we don't need care it.


|| n/a
||
|}
|}


Line 7,428: Line 6,951:
{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| pthread_detach/4-|| '''NEW''' || routerstation || conformance/interfaces/pthread_detach/4-3: execution: SIGNALED || ||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862 Yocto 2862]
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
|| pthread_create/1-6         || POSIX     || beagleboard routerstation mpc8315e ||  
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
execution: HUNG  
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
|| testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass || n/a
||  
 
|-
|-
 
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc   || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. || This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
 
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.  
||
||
|-
|-
 
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block.  || See pthread_rwlock_rdlock/2-1 ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
 
||
|-
|| pthread_rwlock_unlock_4-1 || || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
|| pthread_rwlock_unlock/3-1  ||  Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'.  || See pthread_rwlock_rdlock/2-1 ||
|}
|}


Line 7,456: Line 6,985:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| timer_settime/5-3      || '''confirmed''' || blacksand || conformance/interfaces/timer_settime/5-3: execution: HUNG || We don't get huronriver board
|| clock_getcpuclockid/5-1    || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
|| https://bugzilla.yoctoproject.org/show_bug.cgi?id=2899
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".  
||
|-
|-
|| timer_getoverrun/3-1      || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || '''Stub Case'''
|}
 
Just print something and then return UNTESTED
|| n/a
|-
 
|| clock_getcpuclockid/5-1    || '''Implement related'''  || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||
conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
 
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
 
 
|| n/a
|}


====MSG====
====MSG====
Line 7,481: Line 6,998:
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mq_close/5-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED ||  
|| n/a || || || || ||  
'''Stub Case'''
 
Just print something and then return UNTESTED
|| n/a
|-  
|-  
|}


|| mq_open/4-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
====TPS====
 
Just print something and then return UNTESTED
|| n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
|-
|| mq_open/10-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||  
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/14-1              || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/17-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/22-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/24-1             || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/25-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/28-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_open/30-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
|| mq_send/6-1              || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/6-1           || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_timedsend/17-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||UNTESTED  || '''Stub Case'''
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
Just print something and then return UNTESTED
|| n/a
 
|-
|-
||mq_unlink/2-3              || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || UNTESTED || '''Stub Case'''
Just print something and then return UNTESTED
|| n/a
|}
|}


====TPS====
====MEM====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_getparam/6-1         || '''Not Supported'''     || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || conformance/interfaces/sched_getparam/6-1: execution: '''UNRESOLVED'''
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
  Testing with user deamon (euid, uid) = (1, 1)
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
  The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.  
For default security operations, security_task_getscheduler() is a stub function and just return 0.
 
||
||
|-
|-
||sched_getscheduler/7-1    || '''Not Supportted'''   || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||conformance/interfaces/sched_getscheduler/7-1: execution: '''FAILED'''
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
Testing with user deamon (uid: 1)
  pa: 0x400fb000
The function sched_getscheduler has successed.
  pa_2: 0x40115000
 
  Modification of the partial page
|| Similiar with sched_getparam/6-1
  at the end of an object is written out
|| n/a
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
 
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
 
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||sched_get_priority_max/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
||
 
|-
|-
||sched_get_priority_min/1-3 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
 
|-
|-
||sched_getscheduler/2-1     || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/3-1        || POSIX          || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
||sched_setparam/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


|-
===1.9 M2 RC2 build===
||sched_setparam/7-1       || POSIX           || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
'''Yocto 1.9 M2 RC2 build''' with POSIX test suite version '''20150420'''.


|-
====AIO====
||sched_setparam/8-1        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a


|-
||sched_setparam/12-1 || Ignore      || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/13-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_cancel_7-1 || '''NEW''' || mpc8315e || conformance/interfaces/aio_cancel/aio_cancel_7-1: execution: UNRESOLVED || ||
 
|-
|-
||sched_setparam/14-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||  
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.


The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|-
||sched_setparam/15-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||  
 
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|-
||sched_setparam/16-1 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
 
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/17-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
 
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/18-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
 
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|-
||sched_setparam/19-1       || POSIX           || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| aio_suspend/5-1 || POSIX || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||  
 
'''''Stub Case'''''
Test case is a stub
||
|-
|-
||sched_setparam/20-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||  
 
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|-
||sched_setparam/21-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a
|}


|-
====SIG====
||sched_setparam/21-2        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux || n/a


|-
||sched_setparam/23-2 || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


|-
|| sched_setparam/23-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/23-4        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || || || || ||  
 
|-  
|-
|}
||sched_setparam/23-5      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


====SEM====


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setparam/25-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| sem_init/7-|| '''Unsupported'''  ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX


Then return '''UNTESTED'''


|-
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
||sched_setparam/25-3      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.


|-
It return UNTESTED, we don't need care it.
||sched_setparam/25-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


||
|}


|-
====THR====
||sched_setscheduler/2-1          || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a




{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/5-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
 
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
 
||
|-
|-
||sched_setscheduler/6-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
 
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
 
||
|-
|-
||sched_setscheduler/7-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
 
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
 
||
|-
|-
||sched_setscheduler/9-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||  
 
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|-
||sched_setscheduler/10-1        || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
 
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||  
|-
|-
||sched_setscheduler/11-1       || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|-
||sched_setscheduler/12-1        || POSIX          || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_rdlock/2-|| Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
 
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
 
||
|-
|-
||sched_setscheduler/13-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_unlock_4-1 || || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
 
|-
|-
||sched_setscheduler/14-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_unlock_4-2 || || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
 
|-
|-
||sched_setscheduler/15-1       || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
 
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||  
|-
|-
||sched_setscheduler/15-2        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}


|-
====TMR====
||sched_setscheduler/17-2      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/17-3      || Ignore      || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| clock_getcpuclockid/5-1    || '''Implement related''' ||   mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|-
||sched_setscheduler/17-4      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|}


|-
====MSG====
||sched_setscheduler/19-2      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
||sched_setscheduler/19-3      || Ignore      ||  beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
|| n/a || || ||  || ||  
 
|-  
|-
||sched_setscheduler/19-4      || Ignore      || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Schedule policy SCHED_SPORADIC is not supported by linux || n/a
 
|-
||sched_setscheduler/22-1        || POSIX          || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
 
|-
||sched_setscheduler/22-2        || POSIX          || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || Just print something and then return || n/a
|}
|}


====MEM====
====TPS====


{|border="1"  
{|border="1"  
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| mmap/11-4                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
 
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
 
The mapped page is cached. This case is not supported by Linux.
 
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
|| n/a
 
|-
|-
|| mmap/11-5                    || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||  
  Modification of the partial page
  at the end of an object is written out
|| Same with mmap/11-4, and this case test share memory instead of regular file.
 
shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==>  shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.
|| n/a
 
|-
|-
|| mmap/27-1                   || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver || || This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED || n/a
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
 
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||  
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.  
In the manual of sched_getparam about return value:
EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
|-
|| mmap/28-1                   || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
  Test Fail: mmap/28-1.c Got no error at mmap()
Testing with user deamon (uid: 1)
|| This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.
The function sched_getscheduler has successed.
 
|| Similiar with sched_getparam/6-1
Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().
||
 
|-
This case is NOT supported by Linux.
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|| n/a
|-
 
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|| mmap/31-1                    || POSIX || mpc8315e beagleboard sugarbay blacksand huronriver ||
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
off: fffff000, len: fffff000
 
expect EOVERFLOW but get other error: Cannot allocate memory
 
|| Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.
 
In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms
beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e      0xc0000000
routerstation  0x7fff8000UL
sugarbay      0xffff880000000000
    || n/a         
 
|-
|-
|| shm_open/2-1                 || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver || || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|-
|| shm_open/3-1 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
 
|-
|-
|| shm_open/6-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
====MEM====
|| shm_open/7-1                || POSIX || beagleboard routerstation mpc8315e sugarbay blacksand huronriver ||  ||  test code just return PTS_UNTESTED and do nothing || n/a


{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|-
|| shm_open/9-1                 || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
 
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|-
|| shm_open/10-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
   at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|-
|| shm_open/12-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/19-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/24-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||   ||test code just return PTS_UNTESTED and do nothing || n/a
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/27-1                || POSIX || beagleboard  routerstation  mpc8315e sugarbay blacksand huronriver ||   || test code just return PTS_UNTESTED and do nothing || n/a
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
 
||
|-
|-
|| shm_open/29-1                || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}


|-
===1.9 M1 RC2 build===
|| shm_open/36-1                 || POSIX || beagleboard routerstation  mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
'''Yocto 1.9 M1 RC2 build''' with POSIX test suite version '''20150420'''.


====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.8 M4 RC2 20150403 build===
'''Yocto 1.8 M4 RC2 20150403 build''' with POSIX test suite version '''20150119'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/2-1 || NEW || edgerouter || conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED || ||
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.8 M3 RC3 20150303 build===
'''Yocto 1.8 M3 RC3 20150303 build''' with POSIX test suite version '''20150119'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_cancel_7-1 ||  || mpc8315e || conformance/interfaces/aio_cancel/aio_cancel_7-1: execution: UNRESOLVED || ||
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.7 M4 RC5 20141018 build===
'''Yocto 1.7 M4 RC5 20141018 build''' with POSIX test suite version '''20140422'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_cancel_5-1 ||  || mpc8315e || conformance/interfaces/aio_cancel/aio_cancel_5-1: execution: UNRESOLVED || ||
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.7 M4 RC4 20141011 build===
'''Yocto 1.7 M4 RC4 20141011 build''' with POSIX test suite version '''20140422'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_cancel_5-1 ||  || mpc8315e || conformance/interfaces/aio_cancel/aio_cancel_5-1: execution: UNRESOLVED || ||
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_barrier_wait_2-1 ||  || edgerouter || conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_2-1: execution: HUNG || ||
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock_4-1 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_4-2 ||  || genericx86-64 || cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED || ||
|-
|| pthread_rwlock_unlock_3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.7 M2 RC1 20140730 build===
'''Yocto 1.7 M2 RC1 20140730 build''' with POSIX test suite version '''20140422'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.
The POSIX spec says about aio_error:
The aio_error( ) function may fail if:
[EINVAL]  The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/2-1: execution: UNTESTED ||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter beaglebone  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  ||  ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64 mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || mpc8315e edgerouter beaglebone || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
In the manual of sched_getparam about return value:
EPERM  The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/2-1 || || mpc8315e edgerouter genericx86-64 beaglebone|| conformance/interfaces/sched_setparam/sched_setparam_2-1: execution: UNRESOLVED || ||
|-
||sched_setparam/2-2 || || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_2-2: execution: UNRESOLVED || ||
|-
||sched_setparam/9-1 || || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_9-1: execution: FAILED || ||
|-
||sched_setparam/20-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64 beaglebone || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.6 M5 RC4 20140411 build===
'''Yocto 1.6 M5 RC4 20140411 build''' with POSIX test suite version '''20140115'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sigaltstack_12-1 || ''' LTP ''' || mpc8315e || conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED || The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream. ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' ||  mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX ||  mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/2-1 || || edgerouter || conformance/interfaces/sched_setparam/sched_setparam_2-1: execution: UNRESOLVED || ||
|-
||sched_setparam/2-2 || || edgerouter || conformance/interfaces/sched_setparam/sched_setparam_2-2: execution: UNRESOLVED || ||
|-
||sched_setparam/9-1 || || edgerouter || conformance/interfaces/sched_setparam/sched_setparam_9-1: execution: FAILED || ||
|-
||sched_setparam/20-1 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_23-1 || '''LTP''' || mpc8315e edgerouter genericx86-64  || conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-1 ||  || edgerouter  || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64  || conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64  || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64  || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.6 M5 RC2 20140402 build===
'''Yocto 1.6 M5 RC2 20140402 build''' with POSIX test suite version '''20140115'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter  || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sigaltstack_12-1 || ''' LTP ''' || mpc8315e || conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED || The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream. ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || genericx86-64  mpc8315e edgerouter || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' ||  mpc8315e edgerouter  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX ||  mpc8315e edgerouter || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/2-1 || || edgerouter || conformance/interfaces/sched_setparam/sched_setparam_2-1: execution: UNRESOLVED || ||
|-
||sched_setparam/2-2 || || edgerouter || conformance/interfaces/sched_setparam/sched_setparam_2-2: execution: UNRESOLVED || ||
|-
||sched_setparam/9-1 || || edgerouter || conformance/interfaces/sched_setparam/sched_setparam_9-1: execution: FAILED || ||
|-
||sched_setparam/20-1 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore ||  mpc8315e edgerouter genericx86-64 || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || genericx86-64 edgerouter || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || mpc8315e edgerouter genericx86-64 || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_23-1 || '''LTP''' || mpc8315e edgerouter genericx86-64  || conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-1 ||  || edgerouter  || conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG ||
||
|-
|| shm_open_39-2 || '''LTP''' || mpc8315e edgerouter genericx86-64  || conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || mpc8315e edgerouter genericx86-64  || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || mpc8315e edgerouter genericx86-64  || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.6 M5 RC1 20140326 build===
'''Yocto 1.6 M5 RC1 20140326 build''' with POSIX test suite version '''20140115'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sigaltstack_12-1 || ''' LTP ''' || mpc8315e-rdb || conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED || The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream. ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || beagleboard routerstation mpc8315e || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || sugarbay || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.6 M4 RC1 20140312 build===
'''Yocto 1.6 M4 RC1 20140312 build''' with POSIX test suite version '''20140115'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sigaltstack_12-1 || ''' LTP ''' || mpc8315e-rdb || conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED || The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream. ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_cond_signal_2-2 ||  || beagleboard || conformance/interfaces/pthread_cond_signal/pthread_cond_signal_2-2: execution: SIGNALED || ||
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || beagleboard routerstation mpc8315e || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || sugarbay || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.6 M3 RC2 20140218 build===
'''Yocto 1.6 M3 RC2 20140218 build''' with POSIX test suite version '''20140115'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_fsync_5-1 ||  || routerstation || conformance/interfaces/aio_fsync/aio_fsync_5-1: execution: UNTESTED ||
||
|-
|| aio_error/2-1 ||  || routerstation || conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED ||
||
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sigaltstack_12-1 || ''' LTP ''' || mpc8315e-rdb || conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED || The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream. ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_create_14-1 ||  || routerstation || conformance/interfaces/pthread_create/pthread_create_14-1: execution: SIGNALED || ||
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || beagleboard routerstation mpc8315e || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || sugarbay || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|| shm_open_39-1 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_open_39-2 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
||
|-
|| shm_unlink_10-1 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|| shm_unlink_10-2 || '''LTP''' || beagleboard routerstation mpc8315e sugarbay  || conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED || Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c  Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
||
|-
|}
===1.6 M3 RC1 20140213 build===
'''Yocto 1.6 M3 RC1 20140213 build''' with POSIX test suite version '''20140115'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/2-1 ||  || routerstation || conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED ||
||
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || beagleboard routerstation mpc8315e || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || sugarbay || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|}
===1.6 M2 RC1 20140114 build===
'''Yocto 1.6 M2 RC1 20140114 build''' with POSIX test suite version '''20130904'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_create/14-1 ||  || routerstation || conformance/interfaces/pthread_create/pthread_create_14-1: execution: SIGNALED ||
||
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || beagleboard routerstation mpc8315e || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || sugarbay || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|}
===1.6 M1 RC1 20131203 build===
'''Yocto 1.6 M1 RC1 20131203 build''' with POSIX test suite version '''20130904'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || beagleboard routerstation mpc8315e || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || sugarbay || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|}
===1.5.1 RC2 20131213 build===
'''Yocto 1.5.1 RC2 20131213 build''' with POSIX test suite version '''20130503'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_cancel/6-1 ||  || routerstation || conformance/interfaces/aio_cancel/aio_cancel_6-1: execution: UNRESOLVED ||
||
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sigaddset_1-3 || '''NEW''' || mpc8315e || conformance/interfaces/sigaddset/sigaddset_1-3: execution: FAILED ||
||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || beagleboard routerstation mpc8315e || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || sugarbay || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|}
===1.5 M5 RC6 build===
'''Yocto 1.5 M5 RC6 build''' with POSIX test suite version '''20130503'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay beagleboard mpc8315e routerstation || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but const value 1024 is not enough
||
|-
|}
====SIG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sigaddset_1-3 || '''NEW''' || mpc8315e || conformance/interfaces/sigaddset/sigaddset_1-3: execution: FAILED ||
||
|-
|}
====SEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| sem_init/7-1  ||  '''Unsupported'''  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
  [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
  [17:07:31]File ../../../conformance/interfaces
  /sem_init/7-1.c cannot test: There is no
  constraint on SEM_NSEMS_MAX
Then return '''UNTESTED'''
|| In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.
No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.
It return UNTESTED, we don't need care it.
||
|}
====THR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| pthread_create/14-1 || '''NEW''' || routerstation || conformance/interfaces/pthread_create/pthread_create_14-1: execution: SIGNALED ||
||
|-
|| pthread_mutexattr_gettype_1-2 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_gettype_1-3 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_mutexattr_settype_1-1 || '''Not A Bug''' || sugarbay beagleboard routerstation mpc8315e || conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED ||
Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.
||
|-
|| pthread_cond_broadcast/1-2 || '''Limitted to memory''' || routerstation mpc8315e  || conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED ||
The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED.
When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.
||
|-
|| pthread_create/1-6 || POSIX || beagleboard routerstation mpc8315e || conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG ||
Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。
||
|-
|| pthread_rwlock_rdlock/2-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option '''Thread Execution Scheduling''' of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.'''__flags''' option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.
A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
||
|-
|| pthread_rwlock_rdlock/2-2  || Unsupport by eglibc  || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED ||
Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
||
|-
|| pthread_rwlock_unlock/3-1 || Unsupport by eglibc || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED ||
Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1
||
|-
|}
====TMR====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| clock_getcpuclockid/5-1    || '''Implement related''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/clock_getcpuclockid/5-1: execution: '''UNRESOLVED'''
  clock_getcpuclockid(1, ..) passed unexpectedly
|| Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.
This is '''not supported''' by Linux. In man page, it addresses EPERM "Specified as an '''optional error''' in POSIX.1-2001; '''Does not occur on Linux unless the kernel does not support obtaining the per-process  CPU-time clock of another process.'''".
||
|-
|}
====MSG====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| n/a ||  ||  ||  || ||
|-
|}
====TPS====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
||sched_get_priority_max/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_get_priority_min/1-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_getparam/6-1 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getparam/6-1: execution: UNTESTED
Testing with user deamon (euid, uid) = (1, 1)
The function sched_getparam has successed.
||
This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0.
It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission.
For default security operations, security_task_getscheduler() is a stub function and just return 0.
||
|-
||sched_getscheduler/7-1 || '''Not Supportted''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
|| Similiar with sched_getparam/6-1
||
|-
||sched_setparam/20-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/21-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/23-5 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setparam/25-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED || PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux ||
|-
||sched_setscheduler/17-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/17-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/15-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-3 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/19-4 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-1 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
||sched_setscheduler/22-2 || Ignore || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED || Schedule policy SCHED_SPORADIC is not supported by linux ||
|-
|}
====MEM====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| mmap/31-1 || '''Not Supported''' || sugarbay || conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED ||
This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.
||
|-
|| mmap/11-4 || '''Not Supported''' || beagleboard routerstation mpc8315e sugarbay || conformance/interfaces/mmap/mmap_11-4: execution: FAILED
  pa: 0x400fb000
  pa_2: 0x40115000
  Modification of the partial page
  at the end of an object is written out
|| This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.
Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.
The mapped page is cached. This case is not supported by Linux.
mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==>  sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the '''Page Fault Exception Handler''' to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.
||
|-
|}
===1.5 M4 RC3 build===
'''Yocto 1.5 M4 RC3 build''' with POSIX test suite version '''20130503'''.
====AIO====
{|border="1"
|| '''POSIX cases'''|| '''status''' || '''platforms''' || '''error msg''' || '''analysis''' ||'''bugzilla'''
|-
|| aio_cancel/6-1 || '''NEW''' || routerstation || conformance/interfaces/aio_cancel/aio_cancel_6-1: execution: UNRESOLVED || ||
|-
|| aio_error/3-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_error/3-1: execution: UNTESTED ||
call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2666 Yocto 2666]
|-
|| aio_read/9-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED ||
ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return '''UNSUPPORTED'''.
Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
||
|-
|| aio_return/2-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/2-1: execution: UNTESTED
aio_return/2-1.c Second call to aio_return() '''may''' return -1;
aio_return() returned 111
||
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.
In eglibc the return value is same as first return.
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/3-2 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/3-2: execution: UNTESTED ||
Same with aio_return/2-1
||[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_return/4-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_return/4-1: execution: UNTESTED ||
call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.
||
[https://bugzilla.yoctoproject.org/show_bug.cgi?id=2665 Yocto 2665]
|-
|| aio_suspend/5-1 || POSIX  || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED ||
'''''Stub Case'''''
Test case is a stub
||
|-
|| aio_write/7-1 || '''Not A Bug''' || sugarbay mpc8315e routerstation beagleboard || conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED ||
ltp commit b56638a7a8ae9cd37e5698de3186dc3cb ||
|-
|-
|| shm_open/42-1                || POSIX || beagleboard  routerstation mpc8315e sugarbay blacksand huronriver ||  || test code just return PTS_UNTESTED and do nothing || n/a
|}
|}



Latest revision as of 04:32, 9 April 2020

Introduction

This page records the POSIX history test results for Yocto from version 1.2.

The POSIX test results for Yocto latest version is at https://wiki.yoctoproject.org/wiki/POSIX-results .

The results before Yocto 1.3 M3 RC2 is recorded by classified by POSIX sub-test groups, and later results will be recorded by Yocto versions.

Results and analysis

The results of groups SIG SEM THR TMR MSG TPS MEM are listed. Conclusion of some test cases have been given.

Values of clumn "status" descript the current status of the case. Some keywords include:

Bug: it is a bug and the test case needs to be fixed.

Ignore: the case is not appropriate for the hardware or linux

POSIX: that test case is in development, that causes the test fails

3.0 RC2 build

Yocto 3.0 RC2 build with POSIX test suite version 20190517.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_destroy_speculative_4-1 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED
pthread_mutex_init_speculative_5-2 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED
pthread_mutexattr_gettype_speculative_3-1 Untested beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.7 RC2 build

Yocto 2.7 RC2 build with POSIX test suite version 20190115.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_destroy_speculative_4-1 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED
pthread_mutex_init_speculative_5-2 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED
pthread_mutexattr_gettype_speculative_3-1 Untested beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.7 M3 RC1 build

Yocto 2.7 M3 RC1 build with POSIX test suite version 20190115.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_destroy_speculative_4-1 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED
pthread_mutex_init_speculative_5-2 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED
pthread_mutexattr_gettype_speculative_3-1 Untested beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.7 M2 RC1 build

Yocto 2.7 M2 RC1 build with POSIX test suite version 20180926.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_cancel_7-1 NEW mpc8315e conformance/interfaces/aio_cancel/aio_cancel_7-1: execution: UNRESOLVED
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_destroy_speculative_4-1 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED
pthread_mutex_init_speculative_5-2 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED
pthread_mutexattr_gettype_speculative_3-1 Untested beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.7 M1 RC1 build

Yocto 2.7 M1 RC1 build with POSIX test suite version 20180926.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_2-1 NEW edgerouter conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_destroy_speculative_4-1 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED
pthread_mutex_init_speculative_5-2 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED
pthread_mutexattr_gettype_speculative_3-1 Untested beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: UNTESTED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.6 RC1 build

Yocto 2.6 RC1 build with POSIX test suite version 20180515.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_2-1 NEW edgerouter conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_destroy_speculative_4-1 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED
pthread_mutex_init_speculative_5-2 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED
pthread_mutexattr_gettype_speculative_3-1 Untested beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.6 M3 RC1 build

Yocto 2.6 M3 RC1 build with POSIX test suite version 20180515.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_2-1 NEW edgerouter conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_destroy_speculative_4-1 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED
pthread_mutex_init_speculative_5-2 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED
pthread_mutexattr_gettype_speculative_3-1 Untested beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.6 M2 RC1 build

Yocto 2.6 M2 RC1 build with POSIX test suite version 20180515.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_2-1 NEW edgerouter conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_destroy_speculative_4-1 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_cond_destroy/speculative/pthread_cond_destroy_speculative_4-1: execution: UNSUPPORTED
pthread_mutex_init_speculative_5-2 Unsupported beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutex_init/speculative/pthread_mutex_init_speculative_5-2: execution: UNSUPPORTED
pthread_mutexattr_gettype_speculative_3-1 Untested beaglebone mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/speculative/pthread_mutexattr_gettype_speculative_3-1: execution: UNTESTED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_settime_8-1 NEW beaglebone conformance/interfaces/clock_settime/clock_settime_8-1: execution: FAILED

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.5 RC1 build

Yocto 2.5 RC1 build with POSIX test suite version 20180118.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_cancel_5-1 NEW mpc8315e conformance/interfaces/aio_cancel/aio_cancel_5-1: execution: UNRESOLVED
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_21-1 NEW beaglebone mpc8315e-rdb edgerouter conformance/interfaces/mmap/mmap_21-1: execution: FAILED
mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.5 M3 RC1 build

Yocto 2.5 M3 RC1 build with POSIX test suite version 20180118.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.5 M2 RC1 build

Yocto 2.5 M2 RC1 build with POSIX test suite version 20180118.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: UNSUPPORTED The case becomes invalid after glibc-2.23
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.5 M1 RC3 build

Yocto 2.5 M1 RC3 build with POSIX test suite version 20170929.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG The case becomes invalid after glibc-2.23
pthread_barrier_wait_6-1 beaglebone genericx86-64 conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_1-1 genericx86-64 conformance/interfaces/clock/clock_1-1: execution: FAILED
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.5 M1 RC1 build

Yocto 2.5 M1 RC1 build with POSIX test suite version 20170929.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error_3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read_9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return_2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In glibc the return value is same as first return.

Yocto 2665
aio_return_3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return_4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend_5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write_7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init_7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In glibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG The case becomes invalid after glibc-2.23
pthread_barrier_wait_6-1 beaglebone genericx86-64 conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast_1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock_2-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But glibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock_2-2 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_4-2 Unsupported genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED Unlocking uninitialized rwlock is undefined on Linux
pthread_rwlock_unlock_3-1 Unsupport by glibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid_5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min_1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam_6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler_7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam_20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam_25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler_17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler_22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap_31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap_11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.4 RC3 build

Yocto 2.4 RC3 build with POSIX test suite version 20170516.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 beaglebone genericx86-64 conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 NEW edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG


2.4 RC2 build

Yocto 2.4 RC2 build with POSIX test suite version 20170516.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 beaglebone genericx86-64 conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 NEW edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.4 RC1 build

Yocto 2.4 RC1 build with POSIX test suite version 20170516.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 beaglebone genericx86-64 conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 NEW edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.4 M2 RC3 build

Yocto 2.4 M2 RC3 build with POSIX test suite version 20170516.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 beaglebone genericx86-64 conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.4 M2 RC2 build

Yocto 2.4 M2 RC2 build with POSIX test suite version 20170516.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 beaglebone genericx86-64 conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.4 M1 RC1 build

Yocto 2.4 M1 RC1 build with POSIX test suite version 20170516.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 beaglebone conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.3 RC2 build

Yocto 2.3 RC2 build with POSIX test suite version 20170116.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 mpc8315e beaglebone conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.3 M3 RC2 build

Yocto 2.3 M3 RC2 build with POSIX test suite version 20170116.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 mpc8315e beaglebone conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.3 M2 RC3 build

Yocto 2.3 M2 RC3 build with POSIX test suite version 20160126.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 mpc8315e beaglebone conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
munmap_2-1 genericx86-64 beaglebone mpc8315e edgerouter conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.3 M1 RC1 build

Yocto 2.3 M1 RC1 build with POSIX test suite version 20160126.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 mpc8315e beaglebone conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
munmap_2-1 genericx86-64 beaglebone mpc8315e edgerouter conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.2 RC4 build

Yocto 2.2 RC4 build with POSIX test suite version 20160126.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 mpc8315e beaglebone conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
munmap_2-1 genericx86-64 beaglebone mpc8315e edgerouter conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG


2.2 M3 RC1 build

Yocto 2.2 M3 RC1 build with POSIX test suite version 20160126.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 mpc8315e beaglebone conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
munmap_2-1 genericx86-64 beaglebone mpc8315e edgerouter conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.2 M2 RC1 build

Yocto 2.2 M2 RC1 build with POSIX test suite version 20160126.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/2-1 edgerouter conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_destroy_2-1 genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_barrier_destroy/pthread_barrier_destroy_2-1: execution: HUNG
pthread_barrier_wait_6-1 mpc8315e beaglebone conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_6-1: execution: SIGNALED
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: UNSUPPORTED
pthread_rwlock_unlock_4-2 genericx86-64 mpc8315e edgerouter beaglebone cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: UNSUPPORTED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
munmap_2-1 genericx86-64 beaglebone mpc8315e edgerouter conformance/interfaces/munmap/munmap_2-1: execution: SIGNALED
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.0 RC3 build

Yocto 2.0 RC3 build with POSIX test suite version 20150420.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

2.0 RC2 build

Yocto 2.0 RC2 build with POSIX test suite version 20150420.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_settime_8-1 NEW beaglebone conformance/interfaces/clock_settime/clock_settime_8-1: execution: FAILED

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG


1.9 M3 RC1 build

Yocto 1.9 M3 RC1 build with POSIX test suite version 20150420.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.9 M2 RC2 build

Yocto 1.9 M2 RC2 build with POSIX test suite version 20150420.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_cancel_7-1 NEW mpc8315e conformance/interfaces/aio_cancel/aio_cancel_7-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.9 M1 RC2 build

Yocto 1.9 M1 RC2 build with POSIX test suite version 20150420.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG


1.8 M4 RC2 20150403 build

Yocto 1.8 M4 RC2 20150403 build with POSIX test suite version 20150119.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/2-1 NEW edgerouter conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.8 M3 RC3 20150303 build

Yocto 1.8 M3 RC3 20150303 build with POSIX test suite version 20150119.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_cancel_7-1 mpc8315e conformance/interfaces/aio_cancel/aio_cancel_7-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.7 M4 RC5 20141018 build

Yocto 1.7 M4 RC5 20141018 build with POSIX test suite version 20140422.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_cancel_5-1 mpc8315e conformance/interfaces/aio_cancel/aio_cancel_5-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter beaglebone conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.7 M4 RC4 20141011 build

Yocto 1.7 M4 RC4 20141011 build with POSIX test suite version 20140422.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_cancel_5-1 mpc8315e conformance/interfaces/aio_cancel/aio_cancel_5-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_barrier_wait_2-1 edgerouter conformance/interfaces/pthread_barrier_wait/pthread_barrier_wait_2-1: execution: HUNG
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter beaglebone conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock_4-1 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-1: execution: SIGNALED
pthread_rwlock_unlock_4-2 genericx86-64 cconformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_4-2: execution: SIGNALED
pthread_rwlock_unlock_3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.7 M2 RC1 20140730 build

Yocto 1.7 M2 RC1 20140730 build with POSIX test suite version 20140422.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_error/3-1: execution: UNTESTED

This test tries to call aio_error with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL.

The POSIX spec says about aio_error: The aio_error( ) function may fail if: [EINVAL] The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/2-1: execution: UNTESTED

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter beaglebone conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter beaglebone conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/clock_getcpuclockid/clock_getcpuclockid_5-1: execution: UNTESTED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0. In the manual of sched_getparam about return value: EPERM The calling process does not have appropriate privileges (Linux: does not have the CAP_SYS_NICE capability).

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/2-1 mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_2-1: execution: UNRESOLVED
sched_setparam/2-2 mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_2-2: execution: UNRESOLVED
sched_setparam/9-1 mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_9-1: execution: FAILED
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_open/shm_open_39-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 beaglebone conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: UNTESTED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.6 M5 RC4 20140411 build

Yocto 1.6 M5 RC4 20140411 build with POSIX test suite version 20140115.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
sigaltstack_12-1 LTP mpc8315e conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream.

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/2-1 edgerouter conformance/interfaces/sched_setparam/sched_setparam_2-1: execution: UNRESOLVED
sched_setparam/2-2 edgerouter conformance/interfaces/sched_setparam/sched_setparam_2-2: execution: UNRESOLVED
sched_setparam/9-1 edgerouter conformance/interfaces/sched_setparam/sched_setparam_9-1: execution: FAILED
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 LTP mpc8315e edgerouter genericx86-64 conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.6 M5 RC2 20140402 build

Yocto 1.6 M5 RC2 20140402 build with POSIX test suite version 20140115.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
sigaltstack_12-1 LTP mpc8315e conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream.

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported mpc8315e edgerouter genericx86-64 conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug genericx86-64 mpc8315e edgerouter conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory mpc8315e edgerouter conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routerstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX mpc8315e edgerouter conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc mpc8315e edgerouter genericx86-64 conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc mpc8315e edgerouter genericx86-64 conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related mpc8315e edgerouter genericx86-64 conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/2-1 edgerouter conformance/interfaces/sched_setparam/sched_setparam_2-1: execution: UNRESOLVED
sched_setparam/2-2 edgerouter conformance/interfaces/sched_setparam/sched_setparam_2-2: execution: UNRESOLVED
sched_setparam/9-1 edgerouter conformance/interfaces/sched_setparam/sched_setparam_9-1: execution: FAILED
sched_setparam/20-1 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore mpc8315e edgerouter genericx86-64 conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported genericx86-64 edgerouter conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported mpc8315e edgerouter genericx86-64 conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_23-1 LTP mpc8315e edgerouter genericx86-64 conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-1 edgerouter conformance/interfaces/shm_open/shm_open_23-1: execution: HUNG
shm_open_39-2 LTP mpc8315e edgerouter genericx86-64 conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP mpc8315e edgerouter genericx86-64 conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP mpc8315e edgerouter genericx86-64 conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.6 M5 RC1 20140326 build

Yocto 1.6 M5 RC1 20140326 build with POSIX test suite version 20140115.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
sigaltstack_12-1 LTP mpc8315e-rdb conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream.

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory routerstation mpc8315e conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX beagleboard routerstation mpc8315e conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported sugarbay conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.6 M4 RC1 20140312 build

Yocto 1.6 M4 RC1 20140312 build with POSIX test suite version 20140115.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
sigaltstack_12-1 LTP mpc8315e-rdb conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream.

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_signal_2-2 beagleboard conformance/interfaces/pthread_cond_signal/pthread_cond_signal_2-2: execution: SIGNALED
pthread_mutexattr_gettype_1-2 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory routerstation mpc8315e conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX beagleboard routerstation mpc8315e conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported sugarbay conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.6 M3 RC2 20140218 build

Yocto 1.6 M3 RC2 20140218 build with POSIX test suite version 20140115.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_fsync_5-1 routerstation conformance/interfaces/aio_fsync/aio_fsync_5-1: execution: UNTESTED
aio_error/2-1 routerstation conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
sigaltstack_12-1 LTP mpc8315e-rdb conformance/interfaces/sigaltstack/sigaltstack_12-1: execution: FAILED The value of MINSIGSTKSZ defined by glibc can be different as the value defined by kernel. Should use value which is low enough for all kernel versions. Already fixed in upstream.

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_create_14-1 routerstation conformance/interfaces/pthread_create/pthread_create_14-1: execution: SIGNALED
pthread_mutexattr_gettype_1-2 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory routerstation mpc8315e conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX beagleboard routerstation mpc8315e conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported sugarbay conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

shm_open_39-1 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_open/shm_open_39-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_open_39-2 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_open/shm_open_39-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_open will return EINVAL, not ENAMETOOLONG
shm_unlink_10-1 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_unlink/shm_unlink_10-1: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG
shm_unlink_10-2 LTP beagleboard routerstation mpc8315e sugarbay conformance/interfaces/shm_unlink/shm_unlink_10-2: execution: FAILED Glibc 2.19 restricts shm_open and shm_unlink to SHMDIR: http://sourceware.org/git/?p=glibc.git;a=commit;h=5d30d853295a5fe04cad22fdf649c5e0da6ded8c Then if the file name is too long, shm_unlink will return ENOENT, not ENAMETOOLONG

1.6 M3 RC1 20140213 build

Yocto 1.6 M3 RC1 20140213 build with POSIX test suite version 20140115.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/2-1 routerstation conformance/interfaces/aio_error/aio_error_2-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory routerstation mpc8315e conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX beagleboard routerstation mpc8315e conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported sugarbay conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.


1.6 M2 RC1 20140114 build

Yocto 1.6 M2 RC1 20140114 build with POSIX test suite version 20130904.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_create/14-1 routerstation conformance/interfaces/pthread_create/pthread_create_14-1: execution: SIGNALED
pthread_mutexattr_gettype_1-2 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory routerstation mpc8315e conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX beagleboard routerstation mpc8315e conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported sugarbay conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

1.6 M1 RC1 20131203 build

Yocto 1.6 M1 RC1 20131203 build with POSIX test suite version 20130904.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
n/a

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory routerstation mpc8315e conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX beagleboard routerstation mpc8315e conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported sugarbay conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

1.5.1 RC2 20131213 build

Yocto 1.5.1 RC2 20131213 build with POSIX test suite version 20130503.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/6-1 routerstation conformance/interfaces/aio_cancel/aio_cancel_6-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
sigaddset_1-3 NEW mpc8315e conformance/interfaces/sigaddset/sigaddset_1-3: execution: FAILED

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_mutexattr_gettype_1-2 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory routerstation mpc8315e conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX beagleboard routerstation mpc8315e conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported sugarbay conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

1.5 M5 RC6 build

Yocto 1.5 M5 RC6 build with POSIX test suite version 20130503.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_error/3-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay beagleboard mpc8315e routerstation conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but const value 1024 is not enough

SIG

POSIX cases status platforms error msg analysis bugzilla
sigaddset_1-3 NEW mpc8315e conformance/interfaces/sigaddset/sigaddset_1-3: execution: FAILED

SEM

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Unsupported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sem_init/sem_init_7-1: execution: UNTESTED
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED, we don't need care it.

THR

POSIX cases status platforms error msg analysis bugzilla
pthread_create/14-1 NEW routerstation conformance/interfaces/pthread_create/pthread_create_14-1: execution: SIGNALED
pthread_mutexattr_gettype_1-2 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-2: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_gettype_1-3 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_gettype/pthread_mutexattr_gettype_1-3: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_mutexattr_settype_1-1 Not A Bug sugarbay beagleboard routerstation mpc8315e conformance/interfaces/pthread_mutexattr_settype/pthread_mutexattr_settype_1-1: execution: FAILED

Not a bug. Test result depends on system implement. Test case try to initialize a pthread_mutexattr_t object with pthread_mutexattr_init() and call pthread_mutexattr_gettype() with an invalid 'attr'.

pthread_cond_broadcast/1-2 Limitted to memory routerstation mpc8315e conformance/interfaces/pthread_cond_broadcast/1-2: execution: UNTESTED

The case create 1000 process, and check the system memory. If system available memory size less than it requires, the case exit with UNTESTED. When run single case on routherstation, it passed. But fails on mpc8315e to run single case even just after reboot.

pthread_create/1-6 POSIX beagleboard routerstation mpc8315e conformance/interfaces/pthread_create/pthread_create_1-6: execution: HUNG

Testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass。

pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-1: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_rdlock/pthread_rwlock_rdlock_2-2: execution: FAILED

Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1

pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay conformance/interfaces/pthread_rwlock_unlock/pthread_rwlock_unlock_3-1: execution: FAILED

Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED
 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; Does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

MSG

POSIX cases status platforms error msg analysis bugzilla
n/a

TPS

POSIX cases status platforms error msg analysis bugzilla
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_max/sched_get_priority_max_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_get_priority_min/sched_get_priority_min_1-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getparam/6-1: execution: UNTESTED

Testing with user deamon (euid, uid) = (1, 1) The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_getscheduler/7-1: execution: UNTESTED

Testing with user deamon (uid: 1) The function sched_getscheduler has successed.

Similiar with sched_getparam/6-1
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_20-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-1: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_21-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_23-5: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-2: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-3: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setparam/sched_setparam_25-4: execution: UNSUPPORTED PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_17-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/15-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_15-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-3: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_19-4: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-1 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-1: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux
sched_setscheduler/22-2 Ignore beagleboard routerstation mpc8315e sugarbay conformance/interfaces/sched_setscheduler/sched_setscheduler_22-2: execution: UNSUPPORTED Schedule policy SCHED_SPORADIC is not supported by linux

MEM

POSIX cases status platforms error msg analysis bugzilla
mmap/31-1 Not Supported sugarbay conformance/interfaces/mmap/mmap_31-1: execution: UNSUPPORTED

This case is NOT supported by Linux. Test parameters length and offset for mmap() are too large. In function get_unmapped_area(), it checks that length should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value differs on different platforms.

mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay conformance/interfaces/mmap/mmap_11-4: execution: FAILED
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page. The mapped page is cached. This case is not supported by Linux. mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

1.5 M4 RC3 build

Yocto 1.5 M4 RC3 build with POSIX test suite version 20130503.

AIO

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/6-1 NEW routerstation conformance/interfaces/aio_cancel/aio_cancel_6-1: execution: UNRESOLVED
aio_error/3-1 Not A Bug sugarbay mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNTESTED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNSUPPORTED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED. Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_return/2-1 Not A Bug sugarbay mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNTESTED

aio_return/2-1.c Second call to aio_return() may return -1; aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation. In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNTESTED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNTESTED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_suspend/5-1 POSIX sugarbay mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case Test case is a stub

aio_write/7-1 Not A Bug sugarbay mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNSUPPORTED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb ||

Results before Yocto 1.3 M4 RC3 20120916 build

The results of groups SIG SEM THR TMR MSG TPS MEM are listed. Conclusion of some test cases have been given.

Values of clumn "status" descript the current status of the case. Some keywords include:

Bug: it is a bug and the test case needs to be fixed.

Ignore: the case is not appropriate for the hardware or linux

POSIX: that test case is in development, that causes the test fails

AIO

1.3 M3 RC2 20120814 build

POSIX cases status platforms error msg analysis bugzilla
lio_listio/11-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1

for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP" but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

Yocto 2660
aio_return/2-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_error/3-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED.

Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_write/7-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED.

Test case try to overflow the aio queue, but const value 1024 is not enough

aio_suspend/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_suspend/5-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_fsync/1-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/3-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/6-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/7-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/10-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/11-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED

Stub Case

Just test _SC_ASYNCHRONOUS_IO value.

aio_read/6-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED

Stub Case

Same with aio_read/2-1

aio_read/12-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/14-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/15-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_write/4-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_write/10-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/11-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/12-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED

Stub Case

Test case is a stub

lio_listio/16-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/17-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/19-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/20-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/21-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/22-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/23-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/24-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/25-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED

Stub Case

Test case is a stub

1.3 20120802 build

POSIX cases status platforms error msg analysis bugzilla
lio_listio/11-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1

for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP" but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

Yocto 2660
aio_return/2-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_error/3-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED.

Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_write/7-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED.

Test case try to overflow the aio queue, but const value 1024 is not enough

aio_suspend/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_suspend/5-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_fsync/1-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/3-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/6-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/7-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/10-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/11-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED

Stub Case

Just test _SC_ASYNCHRONOUS_IO value.

aio_read/6-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED

Stub Case

Same with aio_read/2-1

aio_read/12-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/14-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/15-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_write/4-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_write/10-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/11-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/12-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED

Stub Case

Test case is a stub

lio_listio/16-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/17-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/19-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/20-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/21-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/22-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/23-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/24-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/25-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED

Stub Case

Test case is a stub

1.3 M2 RC1 20120712 build

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/4-1 Fixed routerstation conformance/interfaces/aio_cancel/4-1: execution: UNRESOLVED ltp commit 3f050dc4ac926158d94dd60ab42c727ad1dfe7aa Yocto 2659
lio_listio/11-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1

for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP" but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

Yocto 2660
aio_return/2-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_error/3-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED.

Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_write/7-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED

ltp commit b56638a7a8ae9cd37e5698de3186dc3cb1434cd8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNSUPPORTED.

Test case try to overflow the aio queue, but const value 1024 is not enough

aio_suspend/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_suspend/5-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_fsync/1-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/3-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/6-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/7-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/10-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/11-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED

Stub Case

Just test _SC_ASYNCHRONOUS_IO value.

aio_read/6-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED

Stub Case

Same with aio_read/2-1

aio_read/12-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/14-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/15-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_write/4-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_write/10-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/11-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/12-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED

Stub Case

Test case is a stub

lio_listio/16-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/17-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/19-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/20-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/21-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/22-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/23-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/24-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/25-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED

Stub Case

Test case is a stub

1.2.1 20120629 build

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/3-1 NEED RETEST sugarbay conformance/interfaces/aio_cancel/3-1: execution: UNRESOLVED

Should be fixed by ltp commit 95e17fbe55f6f6b7d647a07e4a1939875d7af2ad. Pls retest it with ltp 20120614

aio_suspend/9-1 NEW blacksand conformance/interfaces/aio_suspend/9-1: execution: FAILED

lack of hardware

Yocto 2842
aio_suspend/3-1 Fixed routerstation conformance/interfaces/aio_suspend/3-1: execution: SIGNALED

Yocto 2841

lio_listio/11-1 Not A Bug sugarbay blacksand mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1

for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP" but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

Yocto 2660
aio_return/2-1 Not A Bug sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_error/3-1 Not A Bug sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNTESTED.

Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_write/7-1 Not A Bug sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED

ltp commit 3f050dc4ac926158d94dd60ab42c727ad1dfe7aa will check the limit of aio queue, if there is no limit, the case is not supported and return UNTESTED.

Test case try to overflow the aio queue, but const value 1024 is not enough

aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED

Stub Case

Just test _SC_ASYNCHRONOUS_IO value.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED

Stub Case

Same with aio_read/2-1

aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED

Stub Case

Test case is a stub

lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED

Stub Case

Test case is a stub

1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/4-1 Fixed routerstation conformance/interfaces/aio_cancel/4-1: execution: UNRESOLVED ltp commit 3f050dc4ac926158d94dd60ab42c727ad1dfe7aa Yocto 2659
lio_listio/11-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1

for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP" but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

Yocto 2660
aio_return/2-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111

In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

Yocto 2665
aio_return/3-2 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED

Same with aio_return/2-1

Yocto 2665
aio_return/4-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED

call aio_return with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2665

aio_error/3-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED

call aio_error with with argument aiocbp which does not point at a control block for an asynchronous I/O request, and expect error EINVAL. But this is optional.

Yocto 2666

aio_read/9-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED

ltp commit 91d8c0c85c97366a7ec4ee08ef3b3e7a38661ac8 will check the limit of aio queue, if there is no limit, the case is not supported and return UNTESTED.

Test case try to overflow the aio queue, but not quit sure the critical value on different OS.

aio_write/7-1 Not A Bug sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED

ltp commit 3f050dc4ac926158d94dd60ab42c727ad1dfe7aa will check the limit of aio queue, if there is no limit, the case is not supported and return UNTESTED.

Test case try to overflow the aio queue, but const value 1024 is not enough

aio_suspend/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_suspend/5-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_fsync/1-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/3-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED

Stub Case

The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED

aio_fsync/6-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/7-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/10-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/11-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_fsync/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/2-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED

Stub Case

Just test _SC_ASYNCHRONOUS_IO value.

aio_read/6-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED

Stub Case

Same with aio_read/2-1

aio_read/12-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/14-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_read/15-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

N/A
aio_write/4-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED

Stub Case

Test case is a stub

aio_write/10-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/11-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/12-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED

Stub Case

Test case is a stub

aio_write/13-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED

Stub Case

Test case is a stub

lio_listio/16-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/17-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/19-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/20-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/21-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/22-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/23-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/24-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED

Stub Case

Test case is not complete, and just return UNTESTED

lio_listio/25-1 POSIX sugarbay blacksand huronriver mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED

Stub Case

Test case is a stub

1.3 20120606 build

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/3-1 Fixed sugarbay conformance/interfaces/aio_cancel/3-1: execution: UNRESOLVED The case has been fix by commit 95e17fb on April 11, 2012, test it with later version
aio_suspend/9-1 FAILED on sugarbay with ltp 20120401 sugarbay conformance/interfaces/aio_suspend/9-1: execution: FAILED

On routerstation run it directly, fails randomly with message:

aio_suspend/9-1.c aio_suspend() should set errno
to EAGAIN: 4 (Interrupted system call)
ltp commit d89f310e5 on Feb 20, 2012 fix this issue. Test pass on routerstation.
aio_read/8-1 sugarbay conformance/interfaces/aio_read/8-1: execution: FAILED Patch sended by Peng Haitao <penght#cn.fujitsu.com> is merged on Mar 21, 2012. Please test it with ltp version 20120401.

Why PASS on mpc8315e:

aiocb doesn't cleanup after declare.
So aiocb.aio_reqprio is random and
beyond AIO_PRIO_DELTA_MAX, so 
call aio_read() fails and returns -1  
aio_write/6-1 sugarbay conformance/interfaces/aio_write/6-1: execution: FAILED Same with aio_read/8-1.
lio_listio/11-1 eglibc issue sugarbay blacksand mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"

but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_return/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

aio_return/3-2 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED Same with aio_return/2-1
aio_return/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED Same with aio_return/2-1
aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED Test case is a stub
aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED Test case is a stub
aio_error/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED test aio_error with invalid aiocb, but the case is not fully complete
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED Test case is outdated, compare
 sysconf(_SC_ASYNCHRONOUS_IO) != 200112L

if true return UNSUPPORTED. The const value should be 200809L now.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED Same with aio_read/2-1
aio_read/9-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED Test case is a stub
aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED Test case is a stub
aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED Test case is a stub
aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED Test case is a stub
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED Test case is a stub
aio_write/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED Test case try to overflow the aio queue, but const value 1024 is not enough
lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED Test case is a stub

1.2 RC5 Denzil

POSIX cases status platforms error msg analysis bugzilla
aio_suspend/3-1 NEW routerstation conformance/interfaces/aio_suspend/3-1: execution: SIGNALED
aio_cancel/3-1 NEW sugarbay conformance/interfaces/aio_cancel/3-1: execution: UNRESOLVED
aio_suspend/9-1 FAILED on sugarbay with ltp 20120401 sugarbay conformance/interfaces/aio_suspend/9-1: execution: FAILED

On routerstation run it directly, fails randomly with message:

aio_suspend/9-1.c aio_suspend() should set errno
to EAGAIN: 4 (Interrupted system call)
ltp commit d89f310e5 on Feb 20, 2012 fix this issue. Test pass on routerstation.
aio_read/8-1 sugarbay conformance/interfaces/aio_read/8-1: execution: FAILED Patch sended by Peng Haitao <penght#cn.fujitsu.com> is merged on Mar 21, 2012. Please test it with ltp version 20120401.

Why PASS on mpc8315e:

aiocb doesn't cleanup after declare.
So aiocb.aio_reqprio is random and
beyond AIO_PRIO_DELTA_MAX, so 
call aio_read() fails and returns -1  
aio_write/6-1 sugarbay conformance/interfaces/aio_write/6-1: execution: FAILED Same with aio_read/8-1.
lio_listio/11-1 eglibc issue sugarbay blacksand mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"

but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_return/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

aio_return/3-2 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED Same with aio_return/2-1
aio_return/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED Same with aio_return/2-1
aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED Test case is a stub
aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED Test case is a stub
aio_error/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED test aio_error with invalid aiocb, but the case is not fully complete
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED Test case is outdated, compare
 sysconf(_SC_ASYNCHRONOUS_IO) != 200112L

if true return UNSUPPORTED. The const value should be 200809L now.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED Same with aio_read/2-1
aio_read/9-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED Test case is a stub
aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED Test case is a stub
aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED Test case is a stub
aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED Test case is a stub
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED Test case is a stub
aio_write/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED Test case try to overflow the aio queue, but const value 1024 is not enough
lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED Test case is a stub

1.2 RC4 Denzil

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/3-1 blacksand conformance/interfaces/aio_cancel/3-1: execution: UNRESOLVED
aio_suspend/9-1 FAILED on sugarbay with ltp 20120401 sugarbay conformance/interfaces/aio_suspend/9-1: execution: FAILED

On routerstation run it directly, fails randomly with message:

aio_suspend/9-1.c aio_suspend() should set errno
to EAGAIN: 4 (Interrupted system call)
ltp commit d89f310e5 on Feb 20, 2012 fix this issue. Test pass on routerstation.
aio_read/8-1 sugarbay conformance/interfaces/aio_read/8-1: execution: FAILED Patch sended by Peng Haitao <penght#cn.fujitsu.com> is merged on Mar 21, 2012. Please test it with ltp version 20120401.

Why PASS on mpc8315e:

aiocb doesn't cleanup after declare.
So aiocb.aio_reqprio is random and
beyond AIO_PRIO_DELTA_MAX, so 
call aio_read() fails and returns -1  
aio_write/6-1 sugarbay conformance/interfaces/aio_write/6-1: execution: FAILED Same with aio_read/8-1.
lio_listio/11-1 eglibc issue sugarbay blacksand mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"

but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_return/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

aio_return/3-2 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED Same with aio_return/2-1
aio_return/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED Same with aio_return/2-1
aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED Test case is a stub
aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED Test case is a stub
aio_error/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED test aio_error with invalid aiocb, but the case is not fully complete
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED Test case is outdated, compare
 sysconf(_SC_ASYNCHRONOUS_IO) != 200112L

if true return UNSUPPORTED. The const value should be 200809L now.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED Same with aio_read/2-1
aio_read/9-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED Test case is a stub
aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED Test case is a stub
aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED Test case is a stub
aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED Test case is a stub
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED Test case is a stub
aio_write/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED Test case try to overflow the aio queue, but const value 1024 is not enough
lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED Test case is a stub

1.2 M4 RC3

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/3-1 NEW blacksand conformance/interfaces/aio_cancel/3-1: execution: UNRESOLVED
aio_suspend/9-1 FAILED on blacksand and sugarbay with ltp 20120401 sugarbay blanksand conformance/interfaces/aio_suspend/9-1: execution: FAILED

On routerstation run it directly, fails randomly with message:

aio_suspend/9-1.c aio_suspend() should set errno
to EAGAIN: 4 (Interrupted system call)
ltp commit d89f310e5 on Feb 20, 2012 fix this issue. Test pass on routerstation.
aio_read/8-1 sugarbay conformance/interfaces/aio_read/8-1: execution: FAILED Patch sended by Peng Haitao <penght#cn.fujitsu.com> is merged on Mar 21, 2012. Please test it with ltp version 20120401.

Why PASS on mpc8315e:

aiocb doesn't cleanup after declare.
So aiocb.aio_reqprio is random and
beyond AIO_PRIO_DELTA_MAX, so 
call aio_read() fails and returns -1  
aio_write/6-1 sugarbay conformance/interfaces/aio_write/6-1: execution: FAILED Same with aio_read/8-1.
lio_listio/11-1 eglibc issue sugarbay blacksand mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"

but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_return/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

aio_return/3-2 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED Same with aio_return/2-1
aio_return/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED Same with aio_return/2-1
aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED Test case is a stub
aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED Test case is a stub
aio_error/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED test aio_error with invalid aiocb, but the case is not fully complete
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED Test case is outdated, compare
 sysconf(_SC_ASYNCHRONOUS_IO) != 200112L

if true return UNSUPPORTED. The const value should be 200809L now.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED Same with aio_read/2-1
aio_read/9-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED Test case is a stub
aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED Test case is a stub
aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED Test case is a stub
aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED Test case is a stub
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED Test case is a stub
aio_write/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED Test case try to overflow the aio queue, but const value 1024 is not enough
lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED Test case is a stub

1.2 M4 RC2

POSIX cases status platforms error msg analysis bugzilla
aio_fsync/8-1 NEW mpc8315e conformance/interfaces/aio_fsync/8-1: execution: SIGNALED
aio_read/8-1 Fixed sugarbay routerstation beagleboard conformance/interfaces/aio_read/8-1: execution: FAILED Patch sended by Peng Haitao <penght#cn.fujitsu.com> is merged on Mar 21, 2012. Please test it with ltp version 20120401.

Why PASS on mpc8315e:

aiocb doesn't cleanup after declare.
So aiocb.aio_reqprio is random and
beyond AIO_PRIO_DELTA_MAX, so 
call aio_read() fails and returns -1  
aio_write/6-1 Fixed sugarbay routerstation beagleboard conformance/interfaces/aio_write/6-1: execution: FAILED Same with aio_read/8-1.
lio_listio/11-1 eglibc issue sugarbay blacksand mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"

but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

aio_suspend/9-1 PASS on blacksand with ltp 20120401 sugarbay conformance/interfaces/aio_suspend/9-1: execution: FAILED

On routerstation run it directly, fails randomly with message:

aio_suspend/9-1.c aio_suspend() should set errno
to EAGAIN: 4 (Interrupted system call)
ltp commit d89f310e5 on Feb 20, 2012 fix this issue. Test pass on routerstation.
aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_return/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

aio_return/3-2 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED Same with aio_return/2-1
aio_return/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED Same with aio_return/2-1
aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED Test case is a stub
aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED Test case is a stub
aio_error/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED test aio_error with invalid aiocb, but the case is not fully complete
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED Test case is outdated, compare
 sysconf(_SC_ASYNCHRONOUS_IO) != 200112L

if true return UNSUPPORTED. The const value should be 200809L now.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED Same with aio_read/2-1
aio_read/9-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED Test case is a stub
aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED Test case is a stub
aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED Test case is a stub
aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED Test case is a stub
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED Test case is a stub
aio_write/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED Test case try to overflow the aio queue, but const value 1024 is not enough
lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED Test case is a stub

1.2 M4 RC1

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/3-1 NEW --> Send Patch sugarbay conformance/interfaces/aio_cancel/3-1: execution: UNRESOLVED It not only show on sugarbay, on blacksand it should fail too. Patch send.
aio_cancel/7-1 NEW --> Ignore mpc8315e conformance/interfaces/aio_cancel/7-1: execution: UNRESOLVED No reappearance
aio_read/8-1 Fixed sugarbay routerstation beagleboard conformance/interfaces/aio_read/8-1: execution: FAILED Patch sended by Peng Haitao <penght#cn.fujitsu.com> is merged on Mar 21, 2012. Please test it with ltp version 20120401.

Why PASS on mpc8315e:

aiocb doesn't cleanup after declare.
So aiocb.aio_reqprio is random and
beyond AIO_PRIO_DELTA_MAX, so 
call aio_read() fails and returns -1  
aio_write/6-1 Fixed sugarbay routerstation beagleboard conformance/interfaces/aio_write/6-1: execution: FAILED Same with aio_read/8-1.
lio_listio/11-1 eglibc issue sugarbay blacksand mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"

but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

aio_suspend/9-1 PASS on routerstation routerstation sugarbay blacksand conformance/interfaces/aio_suspend/9-1: execution: FAILED

On routerstation run it directly, fails randomly with message:

aio_suspend/9-1.c aio_suspend() should set errno
to EAGAIN: 4 (Interrupted system call)
ltp commit d89f310e5 on Feb 20, 2012 fix this issue. Test pass on routerstation.
aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_return/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

aio_return/3-2 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED Same with aio_return/2-1
aio_return/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED Same with aio_return/2-1
aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED Test case is a stub
aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED Test case is a stub
aio_error/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED test aio_error with invalid aiocb, but the case is not fully complete
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED Test case is outdated, compare
 sysconf(_SC_ASYNCHRONOUS_IO) != 200112L

if true return UNSUPPORTED. The const value should be 200809L now.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED Same with aio_read/2-1
aio_read/9-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED Test case is a stub
aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED Test case is a stub
aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED Test case is a stub
aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED Test case is a stub
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED Test case is a stub
aio_write/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED Test case try to overflow the aio queue, but const value 1024 is not enough
lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED Test case is a stub

1.2 M3 RC1

POSIX cases status platforms error msg analysis bugzilla
aio_cancel/3-1 NEW blacksand conformance/interfaces/aio_cancel/3-1: execution: UNRESOLVED No test environment, guess that new malloc aiocb doesn't memset to 0
aio_read/8-1 Fixed sugarbay routerstation beagleboard conformance/interfaces/aio_read/8-1: execution: FAILED Patch sended by Peng Haitao <penght#cn.fujitsu.com> is merged.

Why PASS on mpc8315e:

aiocb doesn't cleanup after declare.
So aiocb.aio_reqprio is random and
beyond AIO_PRIO_DELTA_MAX, so 
call aio_read() fails and returns -1  
aio_write/6-1 Fixed sugarbay routerstation beagleboard conformance/interfaces/aio_write/6-1: execution: FAILED Same with aio_read/8-1.
lio_listio/11-1 eglibc issue sugarbay blacksand mpc8315e routerstation beagleboard
conformance/interfaces/lio_listio/11-1: execution: FAILED
lio_listio/11-1.c Error lio_listio() should have returned -1
for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"

but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

aio_suspend/9-1 PASS on routerstation routerstation sugarbay blacksand conformance/interfaces/aio_suspend/9-1: execution: FAILED

On routerstation run it directly, fails randomly with message:

aio_suspend/9-1.c aio_suspend() should set errno
to EAGAIN: 4 (Interrupted system call)
ltp commit d89f310e5 on Feb 20, 2012 fix this issue. Test pass on routerstation.
aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_return/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

aio_return/3-2 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED Same with aio_return/2-1
aio_return/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED Same with aio_return/2-1
aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED Test case is a stub
aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED Test case is a stub
aio_error/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED test aio_error with invalid aiocb, but the case is not fully complete
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED Test case is outdated, compare
 sysconf(_SC_ASYNCHRONOUS_IO) != 200112L

if true return UNSUPPORTED. The const value should be 200809L now.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED Same with aio_read/2-1
aio_read/9-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED Test case is a stub
aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED Test case is a stub
aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED Test case is a stub
aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED Test case is a stub
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED Test case is a stub
aio_write/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED Test case try to overflow the aio queue, but const value 1024 is not enough
lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED Test case is a stub

1.2 M2 RC1

POSIX cases status platforms error msg analysis bugzilla
aio_read/8-1 POSIX sugarbay routerstation beagleboard conformance/interfaces/aio_read/8-1: execution: FAILED Patch sended by Peng Haitao <penght#cn.fujitsu.com> is reviewing.
aio_write/6-1 POSIX sugarbay routerstation beagleboard conformance/interfaces/aio_write/6-1: execution: FAILED Same fail reason with aio_read/8-1. If the patch for aio_read/8-1 is merged, then send the similar patch
lio_listio/11-1 eglibc issue sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/11-1: execution: FAILED for aio_lio_opcode posix says "The supported operations are LIO_READ, LIO_WRITE, and LIO_NOP"

but it does not say what should happen if the value it not one of the above.

eglibc doesn't validate the parameter aio_lio_opcode when in function __aio_enqueue_request called by lio_listio()

aio_suspend/3-1 PASSED routerstation conformance/interfaces/aio_suspend/3-1: execution: SIGNALED Test with ltp release 20120104, it passes.
aio_suspend/9-1 POSIX/Fixed sugarbay blacksand conformance/interfaces/aio_suspend/9-1: execution: FAILED Test with ltp release 20120104, it hungs. ltp commit d89f310e5 on Feb 20, 2012 fix this issue.
aio_fsync/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/2-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_fsync/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/3-1: execution: UNTESTED The case just test the return value of aio_fsync, if not equal to 0, return FAIL, else return UNTESTED
aio_return/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/2-1: execution: UNRESOLVED
aio_return/2-1.c Second call to aio_return() may return -1; 
aio_return() returned 111
In specification, second call to aio_return() return -1 is a kind of possibility, depends on implementation.

In eglibc the return value is same as first return.

aio_return/3-2 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/3-2: execution: UNRESOLVED Same with aio_return/2-1
aio_return/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_return/4-1: execution: UNRESOLVED Same with aio_return/2-1
aio_suspend/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/2-1: execution: UNTESTED Test case is a stub
aio_suspend/5-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_suspend/5-1: execution: UNSUPPORTED Test case is a stub
aio_cancel/7-1 POSIX/FIXED blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_cancel/7-1: execution: UNRESOLVED FIXED by upstream. git commit on Sep 5, 2011: 7a0726ca51d2ba3a4ba068f6cc1833486f44304c
aio_error/3-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_error/3-1: execution: UNRESOLVED test aio_error with invalid aiocb, but the case is not fully complete
aio_fsync/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/10-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/11-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/1-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/1-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/6-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_fsync/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_fsync/7-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/12-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/13-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/14-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/14-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/15-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/15-1: execution: UNTESTED Test case is not complete, and just return UNTESTED N/A
aio_read/2-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/2-1: execution: UNSUPPORTED Test case is outdated, compare
 sysconf(_SC_ASYNCHRONOUS_IO) != 200112L

if true return UNSUPPORTED. The const value should be 200809L now.

aio_read/6-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/6-1: execution: UNTESTED Same with aio_read/2-1
aio_read/9-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_read/9-1: execution: UNRESOLVED Test case try to overflow the aio queue, but not quit sure the critical value on different OS.
aio_write/10-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/10-1: execution: UNTESTED Test case is a stub
aio_write/11-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/11-1: execution: UNTESTED Test case is a stub
aio_write/12-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/12-1: execution: UNTESTED Test case is a stub
aio_write/13-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/13-1: execution: UNTESTED Test case is a stub
aio_write/4-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/4-1: execution: UNSUPPORTED Test case is a stub
aio_write/7-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/aio_write/7-1: execution: UNRESOLVED Test case try to overflow the aio queue, but const value 1024 is not enough
lio_listio/16-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/16-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/17-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/17-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/19-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/19-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/20-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/20-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/21-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/21-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/22-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/22-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/23-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/23-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/24-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/24-1: execution: UNTESTED Test case is not complete, and just return UNTESTED
lio_listio/25-1 POSIX sugarbay blacksand mpc8315e routerstation beagleboard conformance/interfaces/lio_listio/25-1: execution: UNTESTED Test case is a stub

SIG

1.3 RC2 20120814 build

POSIX cases status platforms error msg analysis bugzilla
n/a

1.3 20120802 build

POSIX cases status platforms error msg analysis bugzilla
n/a

1.3 M2 RC1 20120712 build

POSIX cases status platforms error msg analysis bugzilla
n/a

1.2.1 20120629 build

POSIX cases status platforms error msg analysis bugzilla
n/a

1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
n/a

1.3 20120606 build

POSIX cases status platforms error msg analysis bugzilla
n/a

1.2 RC5 Denzil

POSIX cases status platforms error msg analysis bugzilla
n/a

1.2 RC4 Denzil

POSIX cases status platforms error msg analysis bugzilla
n/a

1.2 M4 RC3

POSIX cases status platforms error msg analysis bugzilla
sigaction/16-1 POSIX/Merged --> Still Failed in ltp Version 20120104 routerstation "test not present"

Please test with ltp version 20120401.

Send patch to fix this issue. git commit: f33434dcdf6c4ae30a76b8cf9fdd5e242adaa409 which merge on Feb 2, 2012.

NO SIGSTKFLT on mips platform. Signals are defined in /usr/include/bits/signum.h

n/a

1.2 M4 RC2

POSIX cases status platforms error msg analysis bugzilla
sigaction/16-1 POSIX/Merged --> Still Failed in ltp Version 20120104 routerstation "test not present"

Please test with ltp version 20120401.

Send patch to fix this issue. git commit: f33434dcdf6c4ae30a76b8cf9fdd5e242adaa409 which merge on Feb 2, 2012.

NO SIGSTKFLT on mips platform. Signals are defined in /usr/include/bits/signum.h

n/a

1.2 M4 RC1

POSIX cases status platforms error msg analysis bugzilla
sigaction/16-1 POSIX/Merged --> Still Failed in ltp Version 20120104 routerstation "test not present"

Please test with ltp version 20120401.

Send patch to fix this issue. git commit: f33434dcdf6c4ae30a76b8cf9fdd5e242adaa409 which merge on Feb 2, 2012.

NO SIGSTKFLT on mips platform. Signals are defined in /usr/include/bits/signum.h

n/a

1.2 M3 RC1

POSIX cases status platforms error msg analysis bugzilla
sigtimedwait/1-1 NEW --> PASS mpc8315e conformance/interfaces/sigtimedwait/1-1: execution: FAILED

NO appear in my test

n/a
sigaction/16-1 POSIX/Merged --> PASS for ltp Version 20120104 routerstation "test not present" Send patch to fix this issue. git commit: f33434dcdf6c4ae30a76b8cf9fdd5e242adaa409

NO SIGSTKFLT on mips platform. Signals are defined in /usr/include/bits/signum.h

n/a

1.2 M2 RC1

POSIX cases status platforms error msg analysis bugzilla
sigaction/16-1 POSIX/Merged routerstation "test not present" Send patch to fix this issue. git commit: f33434dcdf6c4ae30a76b8cf9fdd5e242adaa409

NO SIGSTKFLT on mips platform. Signals are defined in /usr/include/bits/signum.h

n/a

1.2 M1 RC2

POSIX cases status platforms error msg analysis bugzilla
sigaltstack/9-1 POSIX sugarbay blacksand conformance/interfaces/sigaltstack/9-1: execution: UNRESOLVED POSIX issue. Check with next POSIX version. n/a
sigset/7-1 POSIX sugarbay blacksand conformance/interfaces/sigset/7-1: execution: UNRESOLVED POSIX issue. Check with next POSIX version. n/a
sigset/6-1 POSIX sugarbay blacksand conformance/interfaces/sigset/6-1: execution: UNRESOLVED POSIX issue. Check with next POSIX version. n/a
sigqueue/9-1 POSIX blacksand conformance/interfaces/sigqueue/9-1: execution: UNRESOLVED POSIX issue. Check with next POSIX version. n/a
sigaction/16-1 POSIX/Merged qemu-mips routerstation "test not present" NO SIGSTKFLT on mips platform. Signals are defined in /usr/include/bits/signum.h. Patch to fix this is merged n/a

SEM

1.3 RC2 20120814 build

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Not A Bug beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED(Result Codes), we don't need care it.

n/a

1.3 20120802 build

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Not A Bug beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED(Result Codes), we don't need care it.

n/a

1.3 M2 RC1 20120712 build

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Not A Bug beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED(Result Codes), we don't need care it.

n/a

1.2.1 20120629 build

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Not A Bug beagleboard routerstation mpc8315e sugarbay blacksand
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED(Result Codes), we don't need care it.

n/a

1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Not A Bug beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 [17:07:31]sysconf(_SC_SEM_NSEMS_MAX) = -1
 [17:07:31]File ../../../conformance/interfaces
 /sem_init/7-1.c cannot test: There is no 
 constraint on SEM_NSEMS_MAX

Then return UNTESTED

In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

It return UNTESTED(Result Codes), we don't need care it.

n/a

1.3 20120606 build

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

Some one from windriver has send a patch but not merged yet.

n/a

1.2 RC5 Denzil

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

Some one from windriver has send a patch but not merged yet.

n/a


1.2 RC4 Denzil

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

Some one from windriver has send a patch but not merged yet.

n/a

1.2 M4 RC3

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

Some one from windriver has send a patch but not merged yet.

n/a

1.2 M4 RC2

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

Some one from windriver has send a patch but not merged yet.

n/a

1.2 M4 RC1

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 Not Bug beagleboard routerstation mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX For the case, it return UNTESTED. Because there is no limit on SEM_NSEM_MAX.

In the POSIX spec about sysconf() Return Value:

 If the variable corresponding to name is described
 in <limits.h> as a maximum or minimum value and
 the variable has no limit, sysconf( ) shall return −1
 without changing the value of errno. 

the case check the return value of sysconf and can't get the value of SEM_NSEM_MAX then return UNTESTED. This obeys POSIX spec and is NOT A BUG

n/a

1.2 M3 RC1

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1.

No SEM_NSEMS_MAX defined in Yocto same as in Ubuntu and Fedora, so the case fails.

Some one from windriver has send a patch but not merged yet.

n/a

1.2 M2 RC1

POSIX cases status platforms error msg analysis bugzilla
sem_init/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1. No SEM_NSEMS_MAX defined in Yocto Ubuntu and Fedora, so the case fails.

Some one from windriver has send a patch but not merged yet.

n/a

1.2 M1 RC2

POSIX cases status platforms error msg analysis bugzilla
sem_post/8-1 POSIX blacksand conformance/interfaces/sem_post/8-1: execution: FAILED POSIX issue. Check next milestone with next POSIX version. n/a
sem_init/7-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand can't test: There is no constraint on SEM_NSEMS_MAX In eglibc, sysconf() is implemented in sysdeps/posix/sysconf.c. When pass _SC_SEM_NSEMS_MAX to sysconf(), it checks whether SEM_NSEMS_MAX is defined, then if defined return SEM_NSEMS_MAX, otherwise return -1. No SEM_NSEMS_MAX defined in Yocto Ubuntu and Fedora, so the case returns UNTESTED. n/a

THR

1.3 RC2 20120814 build

POSIX cases status platforms error msg analysis bugzilla
pthread_detach/4-3 NEW huronriver conformance/interfaces/pthread_detach/4-3: execution: SIGNALED Yocto 2862
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.3 20120802 build

POSIX cases status platforms error msg analysis bugzilla
pthread_detach/4-3 Conformed routerstationpro with LTP 20120401 conformance/interfaces/pthread_detach/4-3: execution: HUNG
 [17:50:59]System abilities:
 [17:50:59] TSA: 200809
 [17:50:59] TSS: 200809
 [17:50:59] TPS: 200809
 [17:50:59] pagesize: 4096
 [17:50:59] min stack size: 131072
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]All 33 thread attribute objects were initialized
 
 Segmentation fault

multi-threads issue.

Yocto 2862
pthread_cond_broadcast/1-2 Ignore beagleboard huronriver
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.3 M2 RC1 20120712 build

POSIX cases status platforms error msg analysis bugzilla
pthread_detach/4-3 Conformed routerstationpro with LTP 20120401 conformance/interfaces/pthread_detach/4-3: execution: HUNG
 [17:50:59]System abilities:
 [17:50:59] TSA: 200809
 [17:50:59] TSS: 200809
 [17:50:59] TPS: 200809
 [17:50:59] pagesize: 4096
 [17:50:59] min stack size: 131072
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]All 33 thread attribute objects were initialized
 
 Segmentation fault

multi-threads issue.

Yocto 2862
pthread_join/1-2 Retest with 20120614 beagleboard routerstationpro mpc8315e sugarbay blacksand huronriver with LTP 20120401 conformance/interfaces/pthread_join/1-2: execution: UNRESOLVED Pls. retest it
pthread_join/6-3 Retest with 20120614 beagleboard routerstationpro mpc8315e sugarbay blacksand huronriver with LTP 20120401 conformance/interfaces/pthread_join/6-3: execution: UNRESOLVED Pls. Retest it
pthread_cond_broadcast/1-2 Ignore beagleboard huronriver
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2.1 20120629 build

POSIX cases status platforms error msg analysis bugzilla
pthread_detach/4-3 Conformed routerstationpro with LTP 20120614 conformance/interfaces/pthread_detach/4-3: execution: HUNG
 [17:50:59]System abilities:               
 [17:50:59] TSA: 200809
 [17:50:59] TSS: 200809
 [17:50:59] TPS: 200809
 [17:50:59] pagesize: 4096
 [17:50:59] min stack size: 131072
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]WARNING: The TPS option is claimed to be supported but setscope fails
 [17:50:59]All 33 thread attribute objects were initialized
 
 Segmentation fault
Multi-threads issue https://bugzilla.yoctoproject.org/show_bug.cgi?id=2862
pthread_join/1-2 Retest with new version beagleboard routerstationpro mpc8315e sugarbay conformance/interfaces/pthread_join/1-2: execution: UNRESOLVED

ltp commit 62e3be1facfdb51ef4b9cb1f107fca7ffed06e03 fixes this issue, please test it with ltp version 20120614

pthread_join/6-3 Retest with new version routerstationpro mpc8315e sugarbay conformance/interfaces/pthread_join/6-3: execution: UNRESOLVED ltp commit 62e3be1facfdb51ef4b9cb1f107fca7ffed06e03 fixes this issue, please test it with ltp version 20120614
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_signal/1-1 NEW routerstationpro conformance/interfaces/pthread_cond_signal/1-1: execution: FAILED
 [Thread 0x0x2c56d4b0] started and locked the mutex
 [Thread 0x0x2c56d4b0] is waiting for the cond
 [Thread 0x0x2bd6d4b0] started and locked the mutex
 [Thread 0x0x2bd6d4b0] is waiting for the cond
 [Thread 0x0x2b56d4b0] started and locked the mutex
 [Thread 0x0x2b56d4b0] is waiting for the cond
 [Main thread] signals a condition
 [Thread 0x0x2c56d4b0] was wakened and acquired the mutex again
 [Thread 0x0x2c56d4b0] released the mutex
 [Main thread] 1 waiters were wakened
 [Main thread] signals to wake up the next thread
 [Thread 0x0x2bd6d4b0] was wakened and acquired the mutex again
 [Thread 0x0x2bd6d4b0] released the mutex
 [Main thread] signals to wake up the next thread
 [Main thread] signals to wake up the next thread
 [Main thread] signals to wake up the next thread
 [Main thread] signals to wake up the next thread
 [Main thread] signals to wake up the next thread
 [Thread 0x0x2b56d4b0] was wakened and acquired the mutex again
 [Main thread] had to signal the condition 7 times
 [Main thread] to wake up 3 threads
 . Test FAILED.
2674
pthread_create/14-1 NEW routerstationpro conformance/interfaces/pthread_create/14-1: execution: SIGNALED Fails randomly.
pthread_detach/4-3 routerstationpro with LTP 20120401 conformance/interfaces/pthread_detach/4-3: execution: HUNG NO fails when run test case for 100 times
pthread_join/1-2 beagleboard routerstationpro mpc8315e sugarbay blacksand huronriver with LTP 20120401 conformance/interfaces/pthread_join/1-2: execution: UNRESOLVED NO fails when run test case for 100 times on routerstation
pthread_join/6-3 beagleboard routerstationpro mpc8315e sugarbay blacksand huronriver with LTP 20120401 conformance/interfaces/pthread_join/6-3: execution: UNRESOLVED NO fails when run test case for 100 times on routerstation
pthread_cond_broadcast/1-2 Ignore beagleboard huronriver
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand huronriver Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.3 20120606 build

POSIX cases status platforms error msg analysis bugzilla
pthread_detach/4-3 routerstationpro with LTP 20120401 conformance/interfaces/pthread_detach/4-3: execution: HUNG
pthread_join/1-2 beagleboard routerstationpro mpc8315e blacksand with LTP 20120401 conformance/interfaces/pthread_join/1-2: execution: UNRESOLVED
pthread_join/6-3 routerstationpro mpc8315e blacksand with LTP 20120401 conformance/interfaces/pthread_join/6-3: execution: UNRESOLVED
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2 RC5 Denzil

POSIX cases status platforms error msg analysis bugzilla
pthread_detach/4-3 routerstationpro with LTP 20120401 conformance/interfaces/pthread_detach/4-3: execution: HUNG
pthread_join/1-2 beagleboard routerstationpro mpc8315e blacksand with LTP 20120401 conformance/interfaces/pthread_join/1-2: execution: UNRESOLVED
pthread_join/6-3 beagleboard routerstationpro mpc8315e blacksand with LTP 20120401 conformance/interfaces/pthread_join/6-3: execution: UNRESOLVED
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2 RC4 Denzil

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_signal/1-1 NEW mpc8315e with LTP 20120401 conformance/interfaces/pthread_cond_signal/1-1: execution: FAILED
pthread_detach/4-3 routerstationpro with LTP 20120401 conformance/interfaces/pthread_detach/4-3: execution: HUNG
pthread_join/1-2 beagleboard routerstationpro mpc8315e blacksand with LTP 20120401 conformance/interfaces/pthread_join/1-2: execution: UNRESOLVED
pthread_join/6-3 beagleboard routerstationpro mpc8315e blacksand with LTP 20120401 conformance/interfaces/pthread_join/6-3: execution: UNRESOLVED
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2 M4 RC3

POSIX cases status platforms error msg analysis bugzilla
pthread_detach/4-3 NEW blacksand conformance/interfaces/pthread_detach/4-3: execution: HUNG
pthread_join/1-2 NEW beagleboard mpc8315e with LTP 20120401 conformance/interfaces/pthread_join/1-2: execution: UNRESOLVED
pthread_join/6-3 NEW mpc8315e with LTP 20120401 conformance/interfaces/pthread_join/6-3: execution: UNRESOLVED
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2 M4 RC2

POSIX cases status platforms error msg analysis bugzilla
pthread_join/1-2 NEW blacksand with LTP 20120401 conformance/interfaces/pthread_join/1-2: execution: UNRESOLVED
pthread_join/6-3 NEW blacksand with LTP 20120401 conformance/interfaces/pthread_join/6-3: execution: UNRESOLVED
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2 M4 RC1

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2 M3 RC1

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e sugarbay
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_rwlock_rdlock/2-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a rwlock->__data.__flags option to identify perfer 'read lock' or write lock, and the default is 'read lock' first. So second reader can get the lock when a higher priority writer is waiting for the lock.

A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.

pthread_rwlock_rdlock/2-2 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Unsupport by eglibc beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2 M2 RC1

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_broadcast/1-2 Ignore beagleboard
HUNG - "timeout"                                    
Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test)
score 8 or sacrifice child
Killed process 858 (1-2.run-test) 
total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX beagleboard routerstation mpc8315e sugarbay
execution: HUNG 
testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_create/10-1 POSIX/Removed beagleboard routerstation blacksand sugarbay Segmentation fault test case use an uninitialized attributes object to make case pthread_create() segmentation fault then catch the signal. But the uninitialized object is NOT invalid to pthread_create() all the time n/a
pthread_mutex_lock/3-1 POSIX/Merged beagleboard routerstation mpc8315e User defined signal 2 Signals are sended before install signal handler n/a
pthread_rwlock_rdlock/2-1 Ignore(unsupport) beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a __flags option to identify perfer 'read lock' or read lock, and the default is 'read lock' first. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
pthread_rwlock_rdlock/2-2 Ignore(unsupport) beagleboard routerstation mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Ignore(unsupport) beagleboard routerstation mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

1.2 M1 RC2

POSIX cases status platforms error msg analysis bugzilla
pthread_cond_init/2-2 POSIX sugarbay conformance/interfaces/pthread_cond_init/2-2: execution: FAILED POSIX issue. Check next milestone with new POSIX version. n/a
pthread_cond_init/1-3 POSIX sugarbay conformance/interfaces/pthread_cond_init/1-3: execution: HUNG POSIX issue. Check next milestone with new POSIX version. n/a
pthread_mutex_getprioceiling/1-1 POSIX sugarbay blacksand conformance/interfaces/pthread_mutex_getprioceiling/1-1: execution: FAILED POSIX issue. Check next milestone with new POSIX version. n/a
pthread_mutex_init/5-3 POSIX sugarbay conformance/interfaces/pthread_mutex_init/5-3: execution: SIGNALED POSIX issue. Check next milestone with new POSIX version. n/a
pthread_cancel/5-2 POSIX blacksand conformance/interfaces/pthread_cancel/5-2: execution: UNRESOLVED POSIX issue. Check next milestone with new POSIX version. n/a
pthread_cond_broadcast/1-2 Ignore qemu-arm beagleboard HUNG - "timeout" Hardware limited.

Create too many threads and cause kernel to kill some of them, so the case block on getting mutex.

Log in dmesg:

Out of memory: Kill process 25300 (1-2.run-test) score 8 or sacrifice child
Killed process 858 (1-2.run-test) total-vm:26200kB, anon-rss:8236kB, file-rss:4kB
n/a
pthread_create/1-6 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay testcase create NCPU=4 threads running with a high priority with the same sched policy policy and one with a low-priority. The low-priority thread should not run until the other threads stop running, unless the machine has more than NCPU processors. Redefine NCPU = sysconf(_SC_NPROCESSORS_CONF), testcase should pass n/a
pthread_create/10-1 POSIX/Removed qemu-arm beagleboard qemu-mips routerstation Segmentation fault test case use an uninitialized attributes object to make case pthread_create() segmentation fault then catch the signal. But the uninitialized object is NOT invalid to pthread_create() all the time n/a
pthread_create/14-1 POSIX routerstation Segmentation fault test failed 6/10 times. Test with new version POSIX suite n/a
pthread_mutex_lock/3-1 POSIX/Patch Merged qemu-arm beagleboard routerstation qemu-mips mpc8315e User defined signal 2 Signals are sended before install signal handler n/a
pthread_rwlock_rdlock/2-1 Ignore(unsupport) qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. child thread2 read lock 'rwlock' with low priority should block because a high priority write lock is waiting, but read lock doesn't block. This test case is to test option Thread Execution Scheduling of pthread rwlock. But eglibc/libc don't support this option. They provide a __flags option to identify perfer 'read lock' or read lock, and the default is 'read lock' first. A Non-portable api pthread_rwlockattr_setkind_np() is provided to set this value. The test case is not supported.
pthread_rwlock_rdlock/2-2 Ignore(unsupport) qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Main thread read lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with low priority will block. child thread2 read lock 'rwlock' with same low priority should block because a same priority write lock is waiting, but read lock doesn't block. See pthread_rwlock_rdlock/2-1
pthread_rwlock_unlock/3-1 Ignore(unsupport) qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Main thread write lock 'rwlock' with high priority. Child thread1 write lock 'wrlock' with medium priority will block. Child thread2 read lock 'wrlock' with same mediumpriority. Child thread3 write lock 'wrlock' with low priority. When main thread unlock 'rwlock', child thread1 get the 'wrlock'. When child thread1 unlock 'rwlock', child thread2 should get the read lock 'wrlock' because it has higher priority than child thread3. But it is the child thread3 who get the 'wrlock'. See pthread_rwlock_rdlock/2-1

TMR

1.3 RC2 20120814 build

POSIX cases status platforms error msg analysis bugzilla
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Stub Case

Just print something and then return UNTESTED

n/a
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay blacksand huronriver

conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED

 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".


n/a

1.3 20120802 build

POSIX cases status platforms error msg analysis bugzilla
timer_settime/5-3 confirmed sugarbay huronriver conformance/interfaces/timer_settime/5-3: execution: HUNG We don't get huronriver board https://bugzilla.yoctoproject.org/show_bug.cgi?id=2899
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Stub Case

Just print something and then return UNTESTED

n/a
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay blacksand huronriver

conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED

 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".


n/a

1.3 M2 RC1 20120712 build

POSIX cases status platforms error msg analysis bugzilla
timer_settime/5-3 confirmed sugarbay huronriver conformance/interfaces/timer_settime/5-3: execution: HUNG We don't get huronriver board https://bugzilla.yoctoproject.org/show_bug.cgi?id=2899
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Stub Case

Just print something and then return UNTESTED

n/a
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay blacksand huronriver

conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED

 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".


n/a

1.2.1 20120629 build

POSIX cases status platforms error msg analysis bugzilla
timer_settime/5-3 Confirmed sugarbay conformance/interfaces/timer_settime/5-3: execution: HUNG https://bugzilla.yoctoproject.org/show_bug.cgi?id=2899
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Stub Case

Just print something and then return UNTESTED

n/a
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay blacksand

conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED

 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".


n/a

1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
timer_settime/5-3 NEW huronriver conformance/interfaces/timer_settime/5-3: execution: HUNG We don't get huronriver board
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Stub Case

Just print something and then return UNTESTED

n/a
clock_getcpuclockid/5-1 Implement related beagleboard routerstation mpc8315e sugarbay blacksand huronriver

conformance/interfaces/clock_getcpuclockid/5-1: execution: UNRESOLVED

 clock_getcpuclockid(1, ..) passed unexpectedly 
Case tests permission. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Specified as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".


n/a

1.3 20120606 build

POSIX cases status platforms error msg analysis bugzilla
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return UNTESTED n/a
clock_getcpuclockid/5-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

1.2 RC5 Denzil

POSIX cases status platforms error msg analysis bugzilla
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return UNTESTED n/a
clock_getcpuclockid/5-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

1.2 RC4 Denzil

POSIX cases status platforms error msg analysis bugzilla
timer_settime/5-3 NEW sugarbay conformance/interfaces/timer_settime/5-3: execution: HUNG
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return UNTESTED n/a
clock_getcpuclockid/5-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

1.2 M4 RC3

POSIX cases status platforms error msg analysis bugzilla
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return UNTESTED N/A
clock_getcpuclockid/5-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

1.2 M4 RC2

POSIX cases status platforms error msg analysis bugzilla
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return UNTESTED N/A
clock_getcpuclockid/5-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

1.2 M4 RC1

POSIX cases status platforms error msg analysis bugzilla
timer_settime/5-3 sugarbay conformance/interfaces/timer_settime/5-3: execution: HUNG N/A
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return UNTESTED N/A
clock_getcpuclockid/5-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

1.2 M3 RC1

POSIX cases status platforms error msg analysis bugzilla
timer_settime/5-3 NEW sugarbay conformance/interfaces/timer_settime/5-3: execution: HUNG N/A
timer_settime/5-2 NEW --> Ignore beagleboard routerstation conformance/interfaces/timer_settime/5-2: execution: FAILED
signal was not sent
Time on these 2 board have not been set, and output of 'date' is someday of year 1970. Set the time and this case PASSES. N/A
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return UNTESTED N/A
clock_getcpuclockid/5-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

1.2 M2 RC1

POSIX cases status platforms error msg analysis bugzilla
timer_getoverrun/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return UNTESTED N/A
clock_getcpuclockid/5-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

1.2 M1 RC2

POSIX cases status platforms error msg analysis bugzilla
clock_getcpuclockid/6-1 Ignore sugarbay blacksand conformance/interfaces/clock_getcpuclockid/6-1: execution: UNRESOLVED PASS on 1.2 M2 RC1
timer_getoverrun/3-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return UNTESTED N/A
timer_getoverrun/2-3 Ignore qemu-arm beagleboard routerstation

PASS on 1.2 M2 RC1

"WR: Change CONFIG_HZ from 100 to 250 can solve this." The root cause is that these platform don't provide HIGH RESOLUTION TIMER. The value on platforms which test case can pass is only 1 nanosecond. But on qemuarm is 10000000 nanoseconds, on routerstation is 4000250 nanoseconds. After set

 CONFIG_HIGH_RES_TIMER=y

for routerstation (CONFIG_HZ=250 is already set), test case passes.

These 2 kernel configurations for qemuarm are not permitted.

Bug 1827
clock_getcpuclockid/5-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand clock_getcpuclockid(1, ..) passed unexpectedly Permission issue. When call clock_getcpuclockid() as a unpriviledge user to get process 'init' cpu time, it succeeds but expect fails with EPERM.

This is not supported by Linux. In man page, it addresses EPERM "Speci‐fied as an optional error in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.".

clock_getcpuclockid() is implemented in eglibc source file libc/sysdeps/unix/sysv/linux/clock_getcpuclockid.c, call system call clock_getres() without permission check

n/a

MSG

1.3 RC2 20120814 build

POSIX cases status platforms error msg analysis bugzilla
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED

Stub Case

Just print something and then return UNTESTED

n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a

1.3 20120802 build

POSIX cases status platforms error msg analysis bugzilla
mq_timedsend/20-1 Not a bug beagleboard conformance/interfaces/mq_timedsend/20-1: execution: FAILED Test case passes for single test. It is hardware and time related issue. When the OS in high load, case may fail. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED

Stub Case

Just print something and then return UNTESTED

n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a

1.3 M2 RC1 20120712 build

POSIX cases status platforms error msg analysis bugzilla
mq_open/16-1 Fixed routerstation conformance/interfaces/mq_open/16-1: execution: FAILED Test cause issue https://bugzilla.yoctoproject.org/show_bug.cgi?id=2886
mq_timedreceive/5-2 Fixed mpc8315e routerstation sugarbay blacksand huronriver
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
ltp commit 40b04af96e3db7fd8c182159da511d851a9a01a1 on Apr 11, 2012 has fixed this issue. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED

Stub Case

Just print something and then return UNTESTED

n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a

1.2.1 20120629 build

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/10-2 Lack of Hardware blacksand conformance/interfaces/mq_timedreceive/10-2: execution: FAILED Lack of Hardware

For comparison, routerstation with kernel-3.0.24+git1 +34e0d2b4b4e9778b31f9ea99ca43f0dc71a7ee23_1 +982522e3901fad56bb908565b22c498025ab536c-r4.routerstationpro PASS.

Yocto 2863
mq_timedreceive/5-2 Fixed mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
ltp commit 40b04af96e3db7fd8c182159da511d851a9a01a1 on Apr 11, 2012 has fixed this issue. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED

Stub Case

Just print something and then return UNTESTED

n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Stub Case

Just print something and then return UNTESTED

n/a

1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/5-2 Fixed mpc8315e routerstation sugarbay blacksand huronriver
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
ltp commit 40b04af96e3db7fd8c182159da511d851a9a01a1 on Apr 11, 2012 has fixed this issue. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED

Stub Case

Just print something and then return UNTESTED

n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a


1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/5-2 Fixed mpc8315e routerstation sugarbay blacksand huronriver
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
ltp commit 40b04af96e3db7fd8c182159da511d851a9a01a1 on Apr 11, 2012 has fixed this issue. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED

Stub Case

Just print something and then return UNTESTED

n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a


1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/5-2 Fixed mpc8315e routerstation sugarbay blacksand huronriver
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
ltp commit 40b04af96e3db7fd8c182159da511d851a9a01a1 on Apr 11, 2012 has fixed this issue. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED

Stub Case

Just print something and then return UNTESTED

n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver UNTESTED Stub Case

Just print something and then return UNTESTED

n/a

1.3 20120606 build

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/10-2 Bug sugarbay
 conformance/interfaces/mq_timedreceive/10-2: execution: FAILED
n/a
mq_timedreceive/5-2 Ignore mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
Time resolution related. If not set CONFIG_HIGH_RES_TIMERS, the case will PASS. But this conflicts with timer_getoverrun/2-3 which needs to set CONFIG_HIGH_RES_TIMERS to make case PASS. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a

1.2 RC5 Denzil

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/10-2 Bug sugarbay
 conformance/interfaces/mq_timedreceive/10-2: execution: FAILED
n/a
mq_timedreceive/5-2 Ignore mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
Time resolution related. If not set CONFIG_HIGH_RES_TIMERS, the case will PASS. But this conflicts with timer_getoverrun/2-3 which needs to set CONFIG_HIGH_RES_TIMERS to make case PASS. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a


1.2 RC4 Denzil

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/10-2 Bug sugarbay
 conformance/interfaces/mq_timedreceive/10-2: execution: FAILED
n/a
mq_timedreceive/5-2 Ignore mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
Time resolution related. If not set CONFIG_HIGH_RES_TIMERS, the case will PASS. But this conflicts with timer_getoverrun/2-3 which needs to set CONFIG_HIGH_RES_TIMERS to make case PASS. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a

1.2 M4 RC3

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/10-2 Bug blacksand sugarbay
 conformance/interfaces/mq_timedreceive/10-2: execution: FAILED
n/a
mq_open/16-1 NEW routerstation conformance/interfaces/mq_open/16-1: execution: FAILED n/a
mq_timedreceive/5-2 Ignore mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
Time resolution related. If not set CONFIG_HIGH_RES_TIMERS, the case will PASS. But this conflicts with timer_getoverrun/2-3 which needs to set CONFIG_HIGH_RES_TIMERS to make case PASS. n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a

1.2 M4 RC2

POSIX cases status platforms error msg analysis bugzilla
mq_open/16-1 NEW routerstation conformance/interfaces/mq_open/16-1: execution: FAILED n/a
mq_timedreceive/5-2 Ignore mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
Time resolution related. If not set CONFIG_HIGH_RES_TIMERS, the case will PASS. But this conflicts with timer_getoverrun/2-3 which needs to set CONFIG_HIGH_RES_TIMERS to make case PASS. n/a
mq_timedreceive/10-2 Bug beagleboard routerstation mpc8315e subarbay
 FAIL: the validity of
 abs_timeout is checked
 Test FAILED
Pass a invalid parameter and when no need to wait mq_timedreceive should not check the timeout value. This is described in IEEE Std 1003.1-2008 POSIX Base Specifications, Issue 7, line 43787-43889.

In linux implementation, mq_timedreceive is defined in ipc/mqueue.c. It will call prepare_timeout() ==> timespec_valid() to validate the parameter abs_timeout before to get the message queue info.

n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a

1.2 M4 RC1

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/5-2 Ignore mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
Time resolution related. If not set CONFIG_HIGH_RES_TIMERS, the case will PASS. But this conflicts with timer_getoverrun/2-3 which needs to set CONFIG_HIGH_RES_TIMERS to make case PASS. n/a
mq_timedreceive/10-2 Bug beagleboard routerstation mpc8315e subarbay blacksand
 FAIL: the validity of
 abs_timeout is checked
 Test FAILED
Pass a invalid parameter and when no need to wait mq_timedreceive should not check the timeout value. This is described in IEEE Std 1003.1-2008 POSIX Base Specifications, Issue 7, line 43787-43889.

In linux implementation, mq_timedreceive is defined in ipc/mqueue.c. It will call prepare_timeout() ==> timespec_valid() to validate the parameter abs_timeout before to get the message queue info.

n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a

1.2 M3 RC1

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/5-2 Ignore mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
Time resolution related. If not set CONFIG_HIGH_RES_TIMERS, the case will PASS. But this conflicts with timer_getoverrun/2-3 which needs to set CONFIG_HIGH_RES_TIMERS to make case PASS. n/a
mq_timedreceive/10-2 Bug beagleboard routerstation mpc8315e subarbay blacksand
 FAIL: the validity of
 abs_timeout is checked
 Test FAILED
Pass a invalid parameter and when no need to wait mq_timedreceive should not check the timeout value. This is described in IEEE Std 1003.1-2008 POSIX Base Specifications, Issue 7, line 43787-43889.

In linux implementation, mq_timedreceive is defined in ipc/mqueue.c. It will call prepare_timeout() ==> timespec_valid() to validate the parameter abs_timeout before to get the message queue info.

n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a

1.2 M2 RC1

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/5-2 Ignore mpc8315e routerstation sugarbay blacksand
 FAIL: mq_timedreceive didn't block until timout expires
 Test FAILED
Time resolution related. If not set CONFIG_HIGH_RES_TIMERS, the case will PASS. But this conflicts with timer_getoverrun/2-3 which needs to set CONFIG_HIGH_RES_TIMERS to make case PASS. n/a
mq_timedreceive/10-2 kernel implement issue beagleboard routerstation mpc8315e subarbay blacksand
 FAIL: the validity of
 abs_timeout is checked
 Test FAILED
Pass a invalid parameter and when no need to wait mq_timedreceive should not check the timeout value. This is described in IEEE Std 1003.1-2008 POSIX Base Specifications, Issue 7, line 43787-43889.

In linux implementation, mq_timedreceive is defined in ipc/mqueue.c. It will call prepare_timeout() ==> timespec_valid() to validate the parameter abs_timeout before to get the message queue info.

n/a
mq_close/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/4-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/25-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_open/30-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_send/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_timedsend/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a
mq_unlink/2-3 POSIX beagleboard routerstation mpc8315e sugarbay blacksand UNTESTED Just print something and then return UNTESTED n/a

1.2 M1 RC2

POSIX cases status platforms error msg analysis bugzilla
mq_timedreceive/5-2 Ignore qemu-ppc qemu-mips mpc8315e subarbay blacksand The time() can not specifies an abs_timeout to mq_timedreceiver () for preempt_rt kernel n/a
mq_timedreceive/10-2 Bug qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e subarbay blacksand
 FAIL: the validity of
 abs_timeout is checked
 Test FAILED
Pass a invalid parameter and when no need to wait mq_timedreceive should not check the timeout value. This is described in IEEE Std 1003.1-2008 POSIX Base Specifications, Issue 7, line 43787-43889.

In linux implementation, mq_timedreceive is defined in ipc/mqueue.c. It will call prepare_timeout() ==> timespec_valid() to validate the parameter abs_timeout before to get the message queue info.

n/a
mq_timedsend/5-1 POSIX/Patch send qemu-ppc qemu-mips
 Child never interrupted
 mq_send() didn't appear
 to complete
 Test FAILED
It fails random, because test case expect parent process sleep first and then child send signal to notify the parent, then the test pass. But the parent doesn't have chance to sleep before the child send the signal. n/a
mq_close/5-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/4-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/10-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/14-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/17-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/22-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/24-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/25-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/28-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_open/30-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_send/6-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_timedsend/6-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_timedsend/17-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
mq_unlink/2-3 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a

TPS

1.3 RC2 20120814 build

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver conformance/interfaces/sched_getparam/6-1: execution: UNRESOLVED
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay blacksand huronriver conformance/interfaces/sched_getscheduler/7-1: execution: FAILED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Similiar with sched_getparam/6-1 n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a

1.3 20120802 build

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver conformance/interfaces/sched_getparam/6-1: execution: UNRESOLVED
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. It is a system call and implemented in kernel source sched/core.c. In SYSCALL_DEFINE2(sched_getparam, ...) it calls security_task_getscheduler() to check the permission. For default security operations, security_task_getscheduler() is a stub function and just return 0.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay blacksand huronriver conformance/interfaces/sched_getscheduler/7-1: execution: FAILED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Similiar with sched_getparam/6-1 n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a

1.3 M2 RC1 20120712 build

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver conformance/interfaces/sched_getparam/6-1: execution: UNRESOLVED
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. In the manual of sched_getparam about return value:

  EPERM  The calling process does not have appropriate
         privileges (Linux: does not have the 
         CAP_SYS_NICE capability).

It is obvious that Linux does NOT support this case.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay blacksand huronriver conformance/interfaces/sched_getscheduler/7-1: execution: FAILED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Similiar with sched_getparam/6-1 n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a

1.2.1 20120629 build

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand conformance/interfaces/sched_getparam/6-1: execution: UNRESOLVED
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. In the manual of sched_getparam about return value:

  EPERM  The calling process does not have appropriate
         privileges (Linux: does not have the 
         CAP_SYS_NICE capability).

It is obvious that Linux does NOT support this case.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay blacksand conformance/interfaces/sched_getscheduler/7-1: execution: FAILED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Similiar with sched_getparam/6-1 n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a

1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver conformance/interfaces/sched_getparam/6-1: execution: UNRESOLVED
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.

This case try to call sched_getparam as non-root user to get scheduling parameters of process with pid 0. In the manual of sched_getparam about return value:

  EPERM  The calling process does not have appropriate
         privileges (Linux: does not have the 
         CAP_SYS_NICE capability).

It is obvious that Linux does NOT support this case.

sched_getscheduler/7-1 Not Supportted beagleboard routerstation mpc8315e sugarbay blacksand huronriver conformance/interfaces/sched_getscheduler/7-1: execution: FAILED
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Similiar with sched_getparam/6-1 n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand huronriver Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Just print something and then return n/a

1.3 20120606 build

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
sched_getparam is a system call, and defined in kernel/sched/core.c:L4266. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.
WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a

1.2 RC5 Denzil

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
sched_getparam is a system call, and defined in kernel/sched/core.c:L4266. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.
WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


1.2 RC4 Denzil

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
sched_getparam is a system call, and defined in kernel/sched/core.c:L4266. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.
WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a

1.2 M4 RC3

POSIX cases status platforms error msg analysis bugzilla
sched_setparam/9-1 NEW blacksand conformance/interfaces/sched_setparam/9-1: execution: FAILED n/a
sched_getparam/6-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
sched_getparam is a system call, and defined in kernel/sched/core.c:L4266. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.
WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a

1.2 M4 RC2

POSIX cases status platforms error msg analysis bugzilla
sched_getparam/6-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
sched_getparam is a system call, and defined in kernel/sched/core.c:L4266. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.
WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a

1.2 M4 RC1

POSIX cases status platforms error msg analysis bugzilla
sched_setparam/9-1 blacksand conformance/interfaces/sched_setparam/9-1: execution: FAILED n/a
sched_getparam/6-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
sched_getparam is a system call, and defined in kernel/sched/core.c:L4266. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.
WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a

1.2 M3 RC1

POSIX cases status platforms error msg analysis bugzilla
sched_setparam/9-1 blacksand conformance/interfaces/sched_setparam/9-1: execution: FAILED n/a
sched_getparam/6-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
sched_getparam is a system call, and defined in kernel/sched/core.c:L4266. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.
WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a

1.2 M2 RC1

POSIX cases status platforms error msg analysis bugzilla
sched_setparam/9-1 blacksand conformance/interfaces/sched_setparam/9-1: execution: FAILED n/a
sched_getparam/6-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
sched_getparam is a system call, and defined in kernel/sched/core.c:L4266. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.
WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand
Testing with user deamon (uid: 1)
The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_yield/1-1 Bug / Fixed routerstation mpc8315e beagleboard SIGINT is trapped by bin/run-test.sh n/a
sched_get_priority_max/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore beagleboard routerstation mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Just print something and then return n/a

1.2 M1 RC2

POSIX cases status platforms error msg analysis bugzilla
sched_setparam/9-1 blacksand conformance/interfaces/sched_setparam/9-1: execution: FAILED n/a
sched_setscheduler/17-5 POSIX sugarbay blacksand conformance/interfaces/sched_setscheduler/17-5: execution: UNRESOLVED Test next milestion with new version POSIX suite. n/a
sched_getparam/6-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand
 Testing with user deamon (euid, uid) = (1, 1)
 The function sched_getparam has successed.
Call sched_getparam() to get process init as non-root user succeed unexpectedly.

sched_getparam is a system call, and defined in kernel/sched.c:L5510. It calls security_task_getscheduler() ==> security_ops->task_getscheduler() to perform security check. Default security policy is "Unix Discretionary Access Control". Its task_getscheduler() refer to cap_task_getscheduler() and doesn't perform any permission check.

WR: A permission test. On Linux, the kernel makes no check on
user permission to call this API. So basically we don't know
on what condition a system should return EPERM.
It is implementation defined. 
sched_getscheduler/7-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand
 Testing with user deamon (uid: 1)
 The function sched_getscheduler has successed.
Same with sched_getparam/6-1
 WR: A permission test. On Linux, the kernel
 makes no check on user permission to call
 this API. So basically we don't know on what
 condition a system should return EPERM. 
 It is implementation defined. 
n/a
sched_yield/1-1 Bug / Fixed qemu-arm qemu-mips routerstation qemu-ppc mpc8315e beagleboard SIGINT is trapped by bin/run-test.sh n/a
sched_get_priority_max/1-3 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_get_priority_min/1-3 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_getscheduler/2-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/3-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/6-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/7-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/8-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/12-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/13-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/14-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/15-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/16-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/17-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/18-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/19-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setparam/20-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/21-2 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand PTHREAD_SCOPE_PROCESS for pthread_attr_setscope() is not supported by linux n/a
sched_setparam/23-2 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-3 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-4 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setparam/23-5 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-2 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-3 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setparam/25-4 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a


sched_setscheduler/2-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/5-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/6-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/7-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/9-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/10-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/11-1 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/12-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a


sched_setscheduler/13-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/14-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/15-2 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/17-2 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-3 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/17-4 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-2 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-3 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/19-4 Ignore qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Schedule policy SCHED_SPORADIC is not supported by linux n/a
sched_setscheduler/22-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a
sched_setscheduler/22-2 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Just print something and then return n/a

MEM

1.3 RC2 20120814 build

POSIX cases status platforms error msg analysis bugzilla
mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached. This case is not supported by Linux.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 Modification of the partial page 
 at the end of an object is written out
Same with mmap/11-4, and this case test share memory instead of regular file.

shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.

n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED n/a
mmap/28-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 Test Fail: mmap/28-1.c Got no error at mmap()
This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.

Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().

This case is NOT supported by Linux.

n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand huronriver

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a

1.3 20120802 build

POSIX cases status platforms error msg analysis bugzilla
mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached. This case is not supported by Linux.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 Modification of the partial page 
 at the end of an object is written out
Same with mmap/11-4, and this case test share memory instead of regular file.

shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.

n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED n/a
mmap/28-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 Test Fail: mmap/28-1.c Got no error at mmap()
This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.

Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().

This case is NOT supported by Linux.

n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand huronriver

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a

1.3 M2 RC1 20120712 build

POSIX cases status platforms error msg analysis bugzilla
mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached. This case is not supported by Linux.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 Modification of the partial page 
 at the end of an object is written out
Same with mmap/11-4, and this case test share memory instead of regular file.

shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.

n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED n/a
mmap/28-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 Test Fail: mmap/28-1.c Got no error at mmap()
This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.

Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().

This case is NOT supported by Linux.

n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand huronriver

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a

1.2.1 20120629 build

POSIX cases status platforms error msg analysis bugzilla
mlockall/3-6 Fixed routerstation conformance/interfaces/mlockall/3-6: execution: FAILED

I have push fix to yocto/standard/routerstationpro with commit 220d89fcf345ee28fb0cdcf0f33f83b3dc7c460f, but 1.2.1 doesn't include it. I don't know the reason.

mlockall/3-7 Fixed routerstation conformance/interfaces/mlockall/3-7: execution: FAILED

Same with mlockall/3-6

mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand huronriver

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a

1.3 M1 RC1 20120613 build

POSIX cases status platforms error msg analysis bugzilla
mmap/11-4 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 pa: 0x400fb000 
 pa_2: 0x40115000 
 Modification of the partial page
 at the end of an object is written out
This case maps a file with length of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'.

Test on all platforms are failed. The root cause is that after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached. This case is not supported by Linux.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 Modification of the partial page 
 at the end of an object is written out
Same with mmap/11-4, and this case test share memory instead of regular file.

shmfs's file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page.

n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver This case try to test implement which doesn't support flag MAP_FIXED. eglibc supports this flag so the case quits with UNTESTED n/a
mmap/28-1 Not Supported beagleboard routerstation mpc8315e sugarbay blacksand huronriver
 Test Fail: mmap/28-1.c Got no error at mmap()
This case tests mmap() with length of 2 timed file size and expects fail with errno ENXIO( No such device or address), but mmap() successed.

Because Linux kernel just make the mmap connection between file and memory when mmap() called. When first read/write, the kernel mmap the physical file page to the virtual memory page. So it doesn't fail in mmap().

This case is NOT supported by Linux.

n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand huronriver

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand huronriver test code just return PTS_UNTESTED and do nothing n/a

1.3 20120606 build

POSIX cases status platforms error msg analysis bugzilla
mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a

1.2 RC5 Denzil

POSIX cases status platforms error msg analysis bugzilla
mlockall/3-6 Fixed routerstation conformance/interfaces/mlockall/3-6: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

It caused by patch for Yocto 1429, and send patch to fix it. Merged to Yocto routerstation branch.

commit 59c28f7ef99fcea4c7979dde0df650b167da36b9 on Apr 25, 2012

n/a
mlockall/3-7 Fixed routerstation conformance/interfaces/mlockall/3-7: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

Same with 3-6

n/a
mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a

1.2 RC4 Denzil

POSIX cases status platforms error msg analysis bugzilla
mlockall/3-6 Fixed routerstation conformance/interfaces/mlockall/3-6: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

It caused by patch for Yocto 1429, and send patch to fix it. Merged to Yocto routerstation branch.

commit 59c28f7ef99fcea4c7979dde0df650b167da36b9 on Apr 25, 2012

n/a
mlockall/3-7 Fixed routerstation conformance/interfaces/mlockall/3-7: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

Same with 3-6

n/a
mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a

1.2 M4 RC3

POSIX cases status platforms error msg analysis bugzilla
mlockall/3-6 Fixed routerstation conformance/interfaces/mlockall/3-6: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

It caused by patch for Yocto 1429, and send patch to fix it. Merged to Yocto routerstation branch.

commit 59c28f7ef99fcea4c7979dde0df650b167da36b9 on Apr 25, 2012

n/a
mlockall/3-7 Fixed routerstation conformance/interfaces/mlockall/3-7: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

Same with 3-6

n/a
mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a

1.2 M4 RC2

POSIX cases status platforms error msg analysis bugzilla
mlockall/3-6 Fixed routerstation conformance/interfaces/mlockall/3-6: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

It caused by patch for Yocto 1429, and send patch to fix it. Merged to Yocto routerstation branch.

commit 59c28f7ef99fcea4c7979dde0df650b167da36b9 on Apr 25, 2012

n/a
mlockall/3-7 Fixed routerstation conformance/interfaces/mlockall/3-7: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

Same with 3-6

n/a
mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a

1.2 M4 RC1

POSIX cases status platforms error msg analysis bugzilla
mlockall/3-6 Fixed routerstation conformance/interfaces/mlockall/3-6: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

It caused by patch for Yocto 1429, and send patch to fix it. Merged to Yocto routerstation branch.

commit 59c28f7ef99fcea4c7979dde0df650b167da36b9 on Apr 25, 2012

n/a
mlockall/3-7 Fixed routerstation conformance/interfaces/mlockall/3-7: execution: FAILED Test on board router_staion-1, failed by using USB sotrage. POSIX version: 20120104

Same with 3-6

n/a
mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX/Not A Bug beagleboard routerstation mpc8315e sugarbay blacksand
Test Untested: MAP_FIXED defined 
The case requires that macros MAP_FIXED, MAP_SHARED, PROT_WRITE, PROT_READ are not defined. eglibc has defined them, so the test cases quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a

1.2 M3 RC1

POSIX cases status platforms error msg analysis bugzilla
mlockall/3-6 NEW --> Ignore routerstation conformance/interfaces/mlockall/3-6: execution: FAILED Test on board router_staion-2 about 30 times, no fails. POSIX version: 20120104 n/a
mlockall/3-7 NEW --> Ignore routerstation conformance/interfaces/mlockall/3-7: execution: FAILED Test on board router_staion-2 about 30 times, no fails. POSIX version: 20120104 n/a
mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a

1.2 M2 RC1

POSIX cases status platforms error msg analysis bugzilla
mmap/11-4 POSIX beagleboard routerstation mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX beagleboard routerstation mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/2-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX beagleboard routerstation mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a

1.2 M1 RC2

Note: from LTP/POSIX maintainer Cyril say: "At least the mmap/31-1, mmap/28-1, mmap/27-1, mmap/24-2, mmap/11-4 and mmap/11-5 are known to fail sometimes and most likely are coded incorrecly."

Ref: http://sourceforge.net/mailarchive/forum.php?thread_name=4EFBC16E.9040102%40windriver.com&forum_name=ltp-list

So these cases should exclude from test list.


POSIX cases status platforms error msg analysis bugzilla
mlockall/3-7 sugarbay blacksand conformance/interfaces/mlockall/3-7: execution: UNRESOLVED n/a
mmap/11-4 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand

pa: 0x400fb000

pa_2: 0x40115000

Modification of the partial page at the end of an object is written out

Test case map a file with size of 1/2 * page_size, then write char 'b' to next byte of 1/2 * page_size. Then try to re-mmap() the file and expect the byte next to of 1/2 * page_size should not be character 'b'. Test on all platforms are failed. The reason is after first mmap(), the mapped page for the file is cached in page cache. When do the 2nd or 3rd mmap() still get the same mapped page.

The mapped page is cached.

mmap() is a system call and implemented by mmap2(). Then the call sequence is mmap2() ==> sys_mmap_pgoff() ==> do_mmap_pgoff() ==> mmap_region() ==> file->f_op->mmap(). In ext3 file system, file->f_op->mmap() point to generic_file_mmap(). In generic_file_mmap(), assign the Page Fault Exception Handler to filemap_fault(). When access the Virtual Memory Area, page fault will occur and the run filemap_fault(). In filemap_fault(), kernel run find_get_page() to search the physical page in the page cache.

n/a
mmap/11-5 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand Modification of the partial page at the end of an object is written out Same with mmap/11-4, and this test case is to test share memory, so file->f_op->mmap() point to shm_fault() in ipc/shm.c, then it call shmem_fault() ==> shmem_getpage() ==> shmem_getpage_gfp() ==> find_lock_page(). In find_lock_page() it will search the desired pagecache page. n/a
mmap/27-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand eglibc has define macro MAP_FIXED, and test case check MAP_FIXED defined then quit with PTS_UNTESTED n/a
mmap/28-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test mmap() with length 2 timed file size expect fail with errno ENXIO( No such device or address) but successed. n/a
mmap/31-1 POSIX qemu-arm qemu-ppc mpc8315e beagleboard sugarbay blacksand

off: fffff000, len: fffff000

expect EOVERFLOW but get other error: Cannot allocate memory

Parameters lenth and offset for mmap() are too large. Case 24-2 with same length expects mmap() failed with ENOMEM.

In function get_unmapped_area(), it checks len should less than TASK_SIZE, otherwise it returns -ENOMEM. TASK_SIZE value on different platforms

beagleboard    0xC0000000 - 0x01000000 = 0xBF000000
mpc8315e       0xc0000000
routerstation  0x7fff8000UL
sugarbay       0xffff880000000000
n/a
shm_open/23-1 Ignore qemu-ppc HUNG qemu-ppc is too slow to fork and schedule, parent process create 1000 child processes and then wait children quit and then it time out. Limited to hardware. n/a
shm_open/2-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/3-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/6-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/7-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/9-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/10-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/12-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/19-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/24-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/27-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/29-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/36-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a
shm_open/42-1 POSIX qemu-arm beagleboard qemu-mips routerstation qemu-ppc mpc8315e sugarbay blacksand test code just return PTS_UNTESTED and do nothing n/a