Fixes are available
PI72065:ifix for 16003 LOOP IN LIBERTY Z/OS SERVER WHEN ASYNCIO IS ENABLED.
16.0.0.4: WebSphere Application Server Liberty 16.0.0.4
17.0.0.1: WebSphere Application Server Liberty 17.0.0.1
17.0.0.2: WebSphere Application Server Liberty 17.0.0.2
17.0.0.3: WebSphere Application Server Liberty 17.0.0.3
17.0.0.4: WebSphere Application Server Liberty 17.0.0.4
18.0.0.1: WebSphere Application Server Liberty 18.0.0.1
18.0.0.2: WebSphere Application Server Liberty 18.0.0.2
18.0.0.3: WebSphere Application Server Liberty 18.0.0.3
18.0.0.4: WebSphere Application Server Liberty 18.0.0.4
19.0.0.1: WebSphere Application Server Liberty 19.0.0.1
19.0.0.2: WebSphere Application Server Liberty 19.0.0.2
19.0.0.3: WebSphere Application Server Liberty 19.0.0.3
19.0.0.4: WebSphere Application Server Liberty 19.0.0.4
19.0.0.5: WebSphere Application Server Liberty 19.0.0.5
19.0.0.6: WebSphere Application Server Liberty 19.0.0.6
19.0.0.7: WebSphere Application Server Liberty 19.0.0.7
19.0.0.8: WebSphere Application Server Liberty 19.0.0.8
19.0.0.9: WebSphere Application Server Liberty 19.0.0.9
19.0.0.10: WebSphere Application Server Liberty 19.0.0.10
19.0.0.11: WebSphere Application Server Liberty 19.0.0.11
19.0.0.12: WebSphere Application Server Liberty 19.0.0.12
20.0.0.1: WebSphere Application Server Liberty 20.0.0.1
20.0.0.2: WebSphere Application Server Liberty 20.0.0.2
20.0.0.3: WebSphere Application Server Liberty 20.0.0.3
20.0.0.4: WebSphere Application Server Liberty 20.0.0.4
20.0.0.5: WebSphere Application Server Liberty 20.0.0.5
20.0.0.6: WebSphere Application Server Liberty 20.0.0.6
20.0.0.7: WebSphere Application Server Liberty 20.0.0.7
20.0.0.8: WebSphere Application Server Liberty 20.0.0.8
20.0.0.9: WebSphere Application Server Liberty 20.0.0.9
20.0.0.10: WebSphere Application Server Liberty 20.0.0.10
20.0.0.11: WebSphere Application Server Liberty 20.0.0.11
20.0.0.12: WebSphere Application Server Liberty 20.0.0.12
21.0.0.3: WebSphere Application Server Liberty 21.0.0.3
21.0.0.4: WebSphere Application Server Liberty 21.0.0.4
21.0.0.5: WebSphere Application Server Liberty 21.0.0.5
21.0.0.6: WebSphere Application Server Liberty 21.0.0.6
21.0.0.7: WebSphere Application Server Liberty 21.0.0.7
21.0.0.8: WebSphere Application Server Liberty 21.0.0.8
21.0.0.9: WebSphere Application Server Liberty 21.0.0.9
21.0.0.1: WebSphere Application Server Liberty 21.0.0.1
21.0.0.2: WebSphere Application Server Liberty 21.0.0.2
21.0.0.10: WebSphere Application Server Liberty 21.0.0.10
21.0.0.11: WebSphere Application Server Liberty 21.0.0.11
21.0.0.12: WebSphere Application Server Liberty 21.0.0.12
22.0.0.1: WebSphere Application Server Liberty 22.0.0.1
22.0.0.2: WebSphere Application Server Liberty 22.0.0.2
22.0.0.3: WebSphere Application Server Liberty 22.0.0.3
22.0.0.4: WebSphere Application Server Liberty 22.0.0.4
APAR status
Closed as program error.
Error description
16.0.0.3 provides Asynchronous TCP/IP sockets I/O for Liberty on z/OS. When this is enabled (by permitting the server to RACF server class BBG.AUTHMOD.BBGZSAFM.ZOSAIO and running the Angel process), the server tries to allocate 2GB of above the bar storage use in one of its pools. If the storage obtain fails, the code doesn't handle this failure correctly and takes a gpf (abend0C4) causing the server to fail to start. This may also happen after startup, if another buffer is needed, but there not enough memory for the additional buffer. The messages.log will show this is enabled: CWWKB0103I: Authorized service group ZOSAIO is available java core will show this as the current thread: "LargeThreadPool-thread-2" Java callstack: at com/ibm/io/async/AsyncLibrary.aio_init(Native Method) at com/ibm/io/async/AsyncLibrary.initialize(Bytecode PC:33) at com/ibm/io/async/AsyncLibrary.(Bytecode PC:37) at com/ibm/io/async/AsyncLibrary. createInstance(BytecodePC:64) com/ibm/ws/tcpchannel/internal/AioTCPChannel. setup(Bytecode PC:35) at com/ibm/ws/tcpchannel/internal/TCPChannelFactory. createChannel(Bytecode PC:74)
Local fix
There are a few workarounds that can be used 1. Disable Asynchronous TCP/IP sockets I/O for Liberty on z/OS for the server by removing the server's access to RACF server class BBG.AUTHMOD.BBGZSAFM.ZOSAIO 2. Disable Asynchronous TCP/IP sockets I/O for Liberty on z/OS for the server by adding the following property to the bootstrap.properties file: com.ibm.ws.tcpchannel.useZosAio=false 3. Adjust restrictions on memory usage for the server to allow the 2GB allocation to succeed. This can be done by adding MEMLIMIT=NOLMIT to the server proc.
Problem summary
**************************************************************** * USERS AFFECTED: All users of IBM WebSphere Application * * Server Liberty for z/OS * **************************************************************** * PROBLEM DESCRIPTION: An ABEND0C4 can occur in native routine * * buildCellPool on address * * x'00000000_7FFFF000' returned from a * * failed IARV64 GetStor call. * **************************************************************** * RECOMMENDATION: * **************************************************************** The initialization code related to the z/OS Asynchronous I/O TCP (AsyncIO) support failed to obtain a roughly 2Gig, above the bar, piece of storage for use in one of its pools. The code failed to check the return code from the IARV64 GETSTOR invocation and instead just checked the returned storage address. From the systrace I see: 0002 0221 008C4328 SSRV 14B 01C42020 00000008 4A001620 00000000 IarV64 GetStor 00000000_7FFFF000 00000000_000007CF 00000000_00000000 The systrace entry above shows a return code of 8 and rsn of x'0016'. It also shows the return storage address of x'00000000_7FFFF000'. The AsyncIO code checked for a non-zero returned storage address and attempted to use the x'00000000_7FFFF000' as its storage. The ABENDS0C4 resulted when attempting to format the storage within the buildCellPool routine called from buildAIOSRBCellPool within the mvs_aio_services module.
Problem conclusion
Code has been modified in the Asynchronous I/O (AsyncIO) cellpool management code to verify that storage was obtained prior to use. Also, code was added to dynamically grow the AsyncIO SRB cellpool as needed. This eliminates the initial 2Gig storage allocation for a static cellpool. The fix for this APAR is currently targeted for inclusion in fix pack 16.0.0.4. Please refer to the Recommended Updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
Temporary fix
Comments
APAR Information
APAR number
PI69625
Reported component name
LIBERTY PROF -
Reported component ID
5655W6514
Reported release
CD0
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-09-22
Closed date
2016-10-18
Last modified date
2016-11-03
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
LIBERTY PROF -
Fixed component ID
5655W6514
Applicable component levels
RCD0 PSY
UP
Document Information
Modified date:
04 May 2022