A fix is available
APAR status
Closed as program error.
Error description
CICS TS 3.2 deadlock ( CICS hangs) after two user tasks both want SMLOCK and XMLOCK at the same time, other tasks then queue in LMLM for these locks. Trace of one task shows : J9006 DS 0002 DSAT ENTRY ATTACH 2240A300,0,FD,SY J9006 KE 0301 KEIN ENTRY ADD_DYNAMIC_TASK J9006 SM 0301 SMGF ENTRY GETMAIN 22351458 , 00000 J9006 LM 0003 LMLM ENTRY LOCK 21C2C0B0,EXCLUSIVE J9006 DS 0004 DSSR ENTRY SUSPEND 012D0001,,LOCK (SMLOCK) Trace ot the other task shows: QR DS 0010 DSBR ENTRY INQUIRE_TASK 198806CF QR DS 0011 DSBR EXIT INQUIRE_TASK/OK QR_TCB QR SM 0D01 SMMF ENTRY FREEMAIN EIQSKTSF,26B49A78 QR SM 0D02 SMMF EXIT FREEMAIN/OK USER storage at 2 QR SM 0C01 SMMG ENTRY GETMAIN EIQSKTSG,C8,YES,F QR SM 0C02 SMMG EXIT GETMAIN/OK 26B49468 QR SM 0E01 SMMC2 ENTRY INQUIRE_TASK_STORAGE 0092341C,26B49468 QR XM 1001 XMIQ ENTRY INQUIRE_TRANSACTION 0092341C QR LM 0003 LMLM ENTRY LOCK 21C2C290,EXCLUSIVE QR DS 0004 DSSR ENTRY SUSPEND 007D0005,,LOCK (XMLOCK) Both tasks seem to have a valid claim for both SMLOCK and XMLOCK but presumably, for task 92341, DFHSMMC2 should release the SMLOCK in step "inquire_task_storage" before the INQUIRE_TRANSACTION call to to DFHXMIQ which is where the XMLOCK is requested.
Local fix
No Local Fix
Problem summary
**************************************************************** * USERS AFFECTED: All * **************************************************************** * PROBLEM DESCRIPTION: Deadlock between two tasks due to * * conflicting XMLOCK and SMLOCK requests. * **************************************************************** * RECOMMENDATION: * **************************************************************** There is a deadlock between a transaction that owns the SMLOCK and is waiting for the XMLOCK to be freed, and another that owns XMLOCK and is waiting for SMLOCK: (1) CICS has attached the CJGC transaction to perform Java garbage collection work. The XMAT attach logic requires the XMLOCK while it does its work. (2) Another task is issuing an EXEC CICS INQUIRE STORAGE call. DFHSMMC2 is called to perform INQUIRE_TASK_STORAGE. This holds the SMLOCK within DFHSMMC2. (3) The attach of CJGC requires storage, so it waits for SMLOCK. (4) The code in DFHSMMC2 needs to call XM to return transactional information, so requires the XMLOCK. Keywords: SM XM smmc2 jvm gc
Problem conclusion
DFHSMMC2 has been changed to release and reacquire the SMLOCK around the calls to transaction manager for this particular operation.
Temporary fix
********* * HIPER * ********* FIX AVAILABLE BY PTF ONLY
Comments
APAR Information
APAR number
PK65070
Reported component name
CICSTS V3 Z/OS
Reported component ID
5655M1500
Reported release
500
Status
CLOSED PER
PE
NoPE
HIPER
YesHIPER
Special Attention
NoSpecatt
Submitted date
2008-04-25
Closed date
2008-06-23
Last modified date
2008-12-29
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK38082 PK77869
Modules/Macros
DESSMMC2 DFHSMMC2
Fix information
Fixed component name
CICSTS V3 Z/OS
Fixed component ID
5655M1500
Applicable component levels
R500 PSY UK38082
UP08/07/17 P F807
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.2","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}},{"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":"3.2","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
29 December 2008