IBM Support

PM35085: WITH _OPEN_THREADS 3 , PTHREAD.H IS MISSING SOME DEFINES

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as fixed if next.

Error description

  • When _OPEN_THREADS 3 is defined, all pthread functions
    required for the Threads option of Single UNIX Specification,
    Version 3 are exposed, although behavior and function
    signatures are still based on the POSIX.4a draft 6
    specification.
    
    The header file seem to be expose all the required functions.
    But the related defines/constants do not seem to be exposed.
    Missing defines are
    PTHREAD_CANCEL_CANCELED
    PTHREAD_COND_INITIALIZER
    PTHREAD_CREATE_DETACHED
    PTHREAD_CREATE_JOINABLE
    PTHREAD_EXPLICIT_SCHED
    
    These are exposed when SUSv3 functionality is requested via
    feature test macros (FTM) _XOPEN_SOURCE 600 or _UNIX03_THREADS.
    

Local fix

  • if the application really intended to be SUSv3 standard, use
    define _XOPEN_SOURCE 600 or _UNIX03_THREADS.
    if application is intended for POSIX.4a draft 6, define these
    constants in the application itself based on how they are
    defined in pthread.h for SUSV3_THR
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Multithreaded C/C++ applications that        *
    *                 are compiled with Feature Test Macro         *
    *                 _OPEN_THREADS defined to a value of 3.       *
    ****************************************************************
    * PROBLEM DESCRIPTION: The feature test macro _OPEN_THREADS    *
    *                      enables a level of granularity for      *
    *                      applications using threads support      *
    *                      from the C run-time library.  By        *
    *                      defining _OPEN_THREADS 3, applications  *
    *                      expect access to the POSIX.4a Draft6    *
    *                      threads namespace and behavior with     *
    *                      the addition of functions and symbols   *
    *                      provided to support Single Unix         *
    *                      Specification Version 3.                *
    *                                                              *
    *                      However, the pthread.h header does not  *
    *                      expose the following symbols with the   *
    *                      definition of _OPEN_THREADS 3:          *
    *                                                              *
    *                      PTHREAD_CANCELED                        *
    *                      PTHREAD_COND_INITIALIZER                *
    *                      PTHREAD_CREATE_DETACHED                 *
    *                      PTHREAD_CREATE_JOINABLE                 *
    *                      PTHREAD_EXPLICIT_SCHED                  *
    *                                                              *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    See Problem Description.
    

Problem conclusion

Temporary fix

Comments

  • This APAR is being closed FIN with concurrence from the
    submitting customer. This means that a fix to this APAR is
    expected to be delivered from IBM in a release (if any) to be
    available within the next 24 months.
    

APAR Information

  • APAR number

    PM35085

  • Reported component name

    C/C++ FOR MVS

  • Reported component ID

    56551210A

  • Reported release

    770

  • Status

    CLOSED FIN

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2011-03-17

  • Closed date

    2011-04-04

  • Last modified date

    2011-04-04

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    LE C LIBRARY

  • Fixed component ID

    568819805

Applicable component levels

  • R750 PSN

       UP

  • R760 PSN

       UP

  • R770 PSN

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCVSBD","label":"Runtime"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"770","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"770","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":null,"label":null},"Product":{"code":"SG19O","label":"APARs - MVS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"770","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
04 April 2011