A fix is available
APAR status
Closed as program error.
Error description
When starting the CMAS, an abend 0C4 occurs in EYU0CSLT around offset x'ED4' on a LH instruction: 48E2 0000. The psw is pointing into the MAL_CLOCKS_EXPCHK2 routine and occurs because Reg2, which should contain the addres of the MAL PROPER, is invalid. Reg2 is loaded from the MAL PREFIX via Reg9+4. . During startup, CSLT allocates a chunk of CICS EDSA storage to hold MALRL elements that are used during MAL timeout processing. CSLT allocates enough storage to handle 1024 elements. However, at the time of the abend, the site had 1094 elements. Instead of recognizing we didn't have enough room, we end up overlaying storage. The MALPRFX, MAL, and TSPBLK are all corrupted which results in the 0C4 abend.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All CICSPlex/SM V3R1M0 Users * **************************************************************** * PROBLEM DESCRIPTION: An ASRA/S0C4 abend may occur in a CMAS * * in method EYU0CSLT (CSLT) if the * * COMMTSBLOCKS EYUPARM is set to a value * * greater than 1024. * **************************************************************** * RECOMMENDATION: After applying the PTF that resolves this * * APAR, all CMASes must be restarted. Note * * that the restarts do not need to occur at * * the same time. * **************************************************************** Every five minutes, CSLT processes all outstanding requests to see if any should be timed out. To do this, CSLT calls method EYU0XCLG (XCLG) to place all of the MAL Response List (CMRL) elements for the outstanding requests into a buffer. The buffer can hold 1024 elements, but CSLT passes an invalid length to XCLG, which indicates that the buffer can hold 1097 elements. If more than 1097 elements exist, then XCLG returns an error to CSLT, which issues an exception trace record with a debug text of GETCLSTF and a trace point ID of 10. CSLT then continues processing. If more than 1024 but less than 1097 elements exist, then XCLG populates the buffer with the elements. This results in an overlay of storage where the 1025th element is placed, which will result in the ASRA/S0C4 abend in CSLT. The maximum number of CMRL elements that can exist is equal to the COMMTSBLOCKS EYUPARM value. If the default of 512 or any value less than 1025 is used, this problem will not occur.
Problem conclusion
CSLT has been updated to use the COMMTSBLOCKS value or 1024, which ever is greater, when determining how many elements to allocate for the CMRL buffer. CSLT has also been updated to pass the proper size of the CMRL buffer to XCLG.
Temporary fix
FIX AVAILABLE BY PTF ONLY
Comments
An ASRA/S0C4 abend may occur in a CMAS in method EYU0CSLT (CSLT) if the COMMTSBLOCKS EYUPARM is set to a value greater than 1024. Every five minutes, CSLT processes all outstanding requests to see if any should be timed out. To do this, CSLT calls method EYU0XCLG (XCLG) to place all of the MAL Response List (CMRL) elements for the outstanding requests into a buffer. The buffer can hold 1024 elements, but CSLT passes an invalid length to XCLG, which indicates that the buffer can hold 1097 elements. If more than 1097 elements exist, then XCLG returns an error to CSLT, which issue an exception trace record with a debug text of GETCLSTF and a trace point ID of 10. CSLT then continues processing. If more than 1024 but less than 1097 elements exist, then XCLG populates the buffer with the elements. This results in an overlay of storage where the 1025 element is placed, which will result in the ASRA/S0C4 abend in CSLT. The maximum number of CMRL elements that can exist is equal to the COMMTSBLOCKS EYUPARM value. If the default of 512 or any value less than 1025 is used, this problem will not occur. CSLT has been updated to use the COMMTSBLOCKS value or 1024, which ever is greater, when determining how many elements to allocate for the CMRL buffer. CSLT has also been updated to pass the proper size of the CMRL buffer to XCLG.
APAR Information
APAR number
PK22217
Reported component name
CPSM CICS 3.1
Reported component ID
5655M1501
Reported release
100
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2006-03-27
Closed date
2006-11-16
Last modified date
2006-12-01
APAR is sysrouted FROM one or more of the following:
PK22221
APAR is sysrouted TO one or more of the following:
UK19742
Modules/Macros
EYU0CSLT
Fix information
Fixed component name
CPSM CICS 3.1
Fixed component ID
5655M1501
Applicable component levels
R100 PSY UK19742
UP06/11/18 P F611
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":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"3.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
22 February 2023