|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 2128 Details
Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 2128.
Report 2128 Actions
Problem Report Number 2128 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.1093 Raised 2002-06-26 08:00 Updated 2003-03-13 08:00 Published 2002-07-03 08:00 Product Standard Internationalised System Calls and Libraries Extended V2 (UNIX 98) Certification Program The Open Brand certification program Test Suite VSTH version 5.2.3 Test Identification PTHR.os/PTHR.os/schsched_rt/pthread_attr_setscope 1 Problem Summary TSD5TH.00090 Dear Interpretations Committee, We are requesting a waiver for this test due to the behavior of our pthread implementation which causes this test to fail, but which we believe is in compliance with th... Problem Text
Dear Interpretations Committee,
We are requesting a waiver for this test due to the behavior of our pthread
implementation which causes this test to fail, but which we believe is in
compliance with the standard.
This test is testing pthread_attr_setscope(). According to the standard:
Conforming implementations support the PTHREAD_SCOPE_PROCESS scheduling
contention scope, the PTHREAD_SCOPE_SYSTEM scheduling contention scope,
or both.
It also says that pthread_attr_setscope() will fail with ENOTSUP if an
attempt is made to set the scope to an unsupported value.
It tests that one or more of PTHREAD_SCOPE_PROCESS and PTHREAD_SCOPE_SYSTEM
are supported by doing the following:
For each of PTHREAD_SCOPE_PROCESS and PTHREAD_SCOPE_SYSTEM, it calls
pthread_attr_setscope() to set the scope.
If pthread_attr_setscope() fails with ENOTSUP, the test will still pass,
as long as at least one of PTHREAD_SCOPE_PROCESS and PTHREAD_SCOPE_SYSTEM
is supported. But if pthread_attr_setscope fails with any other errno,
the test fails.
In our case, we support both PTHREAD_SCOPE_PROCESS and PTHREAD_SCOPE_SYSTEM,
but only privileged users are allowed to use PTHREAD_SCOPE_SYSTEM. Since
the test user is not privileged, pthread_attr_setscope(PTHREAD_SCOPE_SYSTEM)
fails with EACCESS (Permission denied). The test is expecting failures to
return ENOTSUP, so it doesn't know what to do with EACCESS. This causes the
test to fail with "pthread_attr_getscope unexpectedly failed, rval == 1"
(The error message is actually wrong. It should say "setscope" not
"getscope".)
We believe that this behavior is compliant with the standard, but since we
can't run the test suite as root, this test will always fail.
Thank you for your consideration.Test Output
400|186 1 1 13:35:42|IC Start
200|186 1 13:35:42|TP Start
520|186 1 000104409 1 1|If the feature test macro
520|186 1 000104409 1 2|_POSIX_THREAD_PRIORITY_SCHEDULING is defined:
520|186 1 000104409 1 3|a call to pthread_attr_setscope(attr,
contentionscope)
520|186 1 000104409 1 4|sets the value of the scope attribute of the
attributes
520|186 1 000104409 1 5|object specified by attr to contentionscope
520|186 1 000104409 1 6|and returns 0 on success.
520|186 1 000104409 1 7|Posix Ref: Component PTHREAD_ATTR_SETSCOPE
520|186 1 000104409 1 8|Assertion 9945-1:1996 13.5.1.2-1(C)
520|186 1 000104409 1 9|pthread_attr_getscope unexpectedly failed, rval == 1
220|186 1 1 13:35:42|FAIL
410|186 1 1 13:35:42|IC EndReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
A test suite difficiency is recommended
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Test Suite Deficiency (TSD) Review Conclusion
This is an agreed Test Suite Deficiency
Problem Reporting System Options:
- View Report 2128
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority