IBM Support

IT41422: IBM MQ for Linux writes FDC from 32-bit application reporting XC035011 and errno 22 from pthread_create

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • IBM MQ for Linux generates the following failure data capture
    (FDC) record on behalf of client's 32-bit application:
    
    Probe Id          :- XC035011
    Component         :- xcsCreateThread
    Addressing mode   :- 32-bit
    UserApp           :- TRUE
    Probe Description :- AMQ6119S: An internal IBM MQ error has
    occurred ('22 - Invalid argument' from pthread_create.)
    Arith1            :- 22 (0x16)
    Comment1          :- '22 - Invalid argument' from
    pthread_create.
    

Local fix

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    Application programs on Linux that use a lot of thread-local
    storage, and call into MQ's API.
    
    
    Platforms affected:
    Linux on Power, Linux on x86-64, Linux on zSeries, Linux on x86
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    IBM MQ on Linux had not taken account of the special behaviour
    of pthread_create on Linux, in which the thread-local storage
    size is subtracted from the stack size that the MQ code requests
    from pthread_create.
    

Problem conclusion

  • An addition has been made to the MQ code on Linux, so that the
    MQ library code in your application can be made to query the
    minimum stack size from pthreads, and later add this to the
    stack size that the MQ needs, to arrive at a bigger value, so
    that the pthread_create call will not fail.
    
    This new behavior is off by default in 9.3 LTS and older
    releases.
    
    To switch it on, run:
    
      export AMQ_STACK_SIZE_ADJUSTMENT=1
    
    in the shell that starts your application.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v9.2 LTS   9.2.0.7
    v9.3 LTS   9.3.0.2
    v9.x CD    9.3.1
    
    The latest available maintenance can be obtained from
    'WebSphere MQ Recommended Fixes'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037
    
    If the maintenance level is not yet available information on
    its planned availability can be found in 'WebSphere MQ
    Planned Maintenance Release Dates'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT41422

  • Reported component name

    MQ BASE V9.2

  • Reported component ID

    5724H7281

  • Reported release

    920

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2022-07-05

  • Closed date

    2022-08-26

  • Last modified date

    2022-09-09

  • 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

    MQ BASE V9.2

  • Fixed component ID

    5724H7281

Applicable component levels

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"920","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
09 September 2022