IBM Support

OA61558: POLL FUPT LATCH ENHANCEMENT

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Customer reported application delay. One of the delays
    was caused by poll process-level FUPT latch.
       Poll obtains FUPT latch exclusive three times. Concurrent
    poll requests from multiple threads within the same process
    generated FUPT latch contention in latchset
    SYS.BPX.A000.FSLIT.FILESYS.LSN, causing application delay.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * All users of z/OS UNIX System Services for                   *
    * HBB77B0 HBB77C0 and HBB77D0 using                            *
    * poll() in a multithreaded program                            *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * When running a multithreaded program,                        *
    * delay may occur when multiple threads                        *
    * in a process issue poll requests                             *
    * concurrently.                                                *
    *                                                              *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    Poll processing builds Select Status Array (STAR), enqueues
    STAR on FuptStar chain and dequeues STAR once poll completes.
    Close processing from another thread scans FuptStar chain to
    find matching STAR and removes closing file descriptor from
    active PollFD. Process level FUPT latch is used to
    serialize STAR access among multiple threads in the process.
    Both poll processing and close processing obtain latch
    exclusive. When multiple threads concurrently process poll
    requests, some threads will have to wait for the latch. That
    can result in application delay.
    

Problem conclusion

  • KEYWORDS: IDAAV7R5/K
    
    CONCLUSION:
    Change poll module BPXVSPE1 from three exclusive latch obtains
    to two shared and one exclusive.
    The first change from exclusive to shared was made for adding
    STAR to the head of the chain. Shared latch was used to
    serialize with close processing that obtained latch exclusive.
    Compare-and-swap logic was added to enqueue STARs.
    The second change was made for processing STAR output. Shared
    latch was used to serialize with close processing that obtained
    latch exclusive.
    

Temporary fix

Comments

APAR Information

  • APAR number

    OA61558

  • Reported component name

    OPENMVS SYS SRV

  • Reported component ID

    5695SCPX1

  • Reported release

    7B0

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2021-06-01

  • Closed date

    2021-07-07

  • Last modified date

    2021-11-16

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

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

    UJ05984 UJ05985 UJ05986

Modules/Macros

  • BPXVSPE1 BPXVSSE2
    

Fix information

  • Fixed component name

    OPENMVS SYS SRV

  • Fixed component ID

    5695SCPX1

Applicable component levels

  • R7B0 PSY UJ05984

       UP21/07/21 P F107 ¢

  • R7C0 PSY UJ05985

       UP21/07/21 P F107 ¢

  • R7D0 PSY UJ05986

       UP21/07/21 P F107 ¢

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M"},"Platform":[{"code":"PF054","label":"z\/OS"}],"Version":"7B0"}]

Document Information

Modified date:
17 November 2021