A fix is available
APAR status
Closed as program error.
Error description
You are running CICS Transaction server 3.1 and your region hangs. A dump taken at this time shows many tasks suspended in LMQUEUE waits. The majority of these are waiting on the SMLOCK or the XMLOCK. This APAR is similar to PK67128 and PK93994, except the module here is DFHSMGF instead of DFHSMMF and DFHSMAR. In this scenario task A is returning from a link, so module DFHSMGF is called to freemain a piece of storage. This caused it to obtain the storage manager lock or SMLOCK. This piece of storage has been found to have a corrupted check zone, so now calls DFHXMIQ to issue a SET_TRANSACTION function to increment the storage violation count. This requires the XMLOCK, which is not available, so this task is now in an LMQUEUE wait. Then task B is simply in the process of terminating and DFHXMTA requests the XMLOCK, which is not available so it gets suspended in an LMQUEUE wait also. . When the XMLOCK now becomes available, task B happens to get it, and now attempts to freemain task storage which requires the SMLOCK... which task A still owns. These 2 tasks are now in a deadlock condition and other tasks start backing up behind them in LMQUEUE waits. KIXREVEPH
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All. * **************************************************************** * PROBLEM DESCRIPTION: Deadlock between two tasks caused by * * 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 the XMLOCK and is waiting for the SMLOCK to be freed. (1) Following a storage violation, procedure storage_check_failure in DFHSMGF is called. This holds the SMLOCK. (2) A transaction manager SET_TRANSACTION call is made to update the number of storage violations which have occurred for the task. This requires the XMLOCK. (3) At the same time a problem has occurred during the detach of another task. This holds the XMLOCK. (4) Procedure free_transaction in DFHXMAT is called to make a storage manager FREEMAIN call to free storage in the transaction subpool. This requires the SMLOCK. Additional Keywords: SM XM MSGDFHSM0102 DFHSM0102 SM0102
Problem conclusion
Procedure storage_check_failure in DFHSMGF has been changed to release and reacquire the SMLOCK around the transaction manager SET_TRANSACTION call.
Temporary fix
********* * HIPER * ********* FIX AVAILABLE BY PTF ONLY
Comments
APAR Information
APAR number
PM30455
Reported component name
CICS TS Z/OS V4
Reported component ID
5655S9700
Reported release
600
Status
CLOSED PER
PE
NoPE
HIPER
YesHIPER
Special Attention
NoSpecatt
Submitted date
2011-01-14
Closed date
2011-01-26
Last modified date
2011-02-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK64123
Modules/Macros
DESSMGF DFHSMGF
Fix information
Fixed component name
CICS TS Z/OS V4
Fixed component ID
5655S9700
Applicable component levels
R600 PSY UK64123
UP11/02/01 P F101
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":"4.1","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":"4.1","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
02 February 2011