A fix is available
APAR status
Closed as program error.
Error description
MSC detected an internal logic error when a /RST LINK command was issued for a TCP/IP link. Error message DFS3178E with RETCODE=00000000, RSNCODE=000007C was issued and the restart was aborted.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All IMS V12 systems using Multiple * * System Coupling (MSC) TCPIP Links. * **************************************************************** * PROBLEM DESCRIPTION: Messages 'DFS3178E MSC DETECTED AN * * INTERNAL LOGIC ERROR, RSNCODE=7C' * * and 'DFS3218 INVALID RESTART MESSAGE * * OR RESTART RESPONSE MESSAGE RECEIVED * * RSN=0503' are issued when multiple * * TCP/IP links are started at once. * * * * Also, additional serviceability and * * enhanced processing logic was added * * by this APAR. * * * * Additional keywords: * * MSGDFS3218 MSGDFS3178E /RSTART /RST * **************************************************************** * RECOMMENDATION: INSTALL CORRECTIVE SERVICE FOR APAR/PTF * **************************************************************** Field LXBTCLBP can be corrupted because it can be updated by multiple routines that can run simultaneously in TCB or SRB mode. This causes the DFS3178E RSNCODE=7C error message. Compare and swap logic is needed when updating this field. IMS Connect can return the wrong link block address to IMS due to an error in searching for a matching partner ID's LINK block during link restart. This causes message DFS3218 RSN=0503. This APAR also adds some miscellaneous fixes as follows: - Serviceability logic to log more data in the 6701 link trace and 6701 MSS1 log records. - Field CLBLXB was added to store the LXB control block address for quicker access when processing an input message from the partner IMS. - Logic to save the return and reason codes for errors encountered on a CSLSCBFR RELEASE call, for diagnostics.
Problem conclusion
GEN: POSTREQ PM71644 PM85201 KEYWORDS: IMSSERV *** END IMS KEYWORDS *** DFSTC7B0, DFSTC7D0, DFSTCP20, and DFSSXIN0 were changed to use compare and swap when changing field LXBTCLBP to zero or the LLB address. DFSTC2A0, DFSTC4A0, DFSTC7C0, and DFSTC7D0, were changed to detect a non-zero return code from a CSLSCBFR RELEASE request and issue message DFS3178E with RSNCODE=00000080. The CSLSCBFR RETCODE and RSNCODE are stored in CLBTEMP4 and CLBTEMP5 fields of the LLB when the error is detected by the device dependent module (DDM) and stored into the LXB LXBRET and LXBRSN fields when the error is detected by the TCPIP post handler, DFSTCP20. These control blocks are logged in the 6701-MSS1 records. These return and reason codes are documented in the CSLSRR macro. Logic to test the CPOOL FREE return code in R15 was removed because this call does not return a non zero return code (the call works or abends). DFSTC7D0 was changed to add a subroutine to issue a DFS3178E message and call DFSCMS80 to log a 6701-MSS1 log record. DFSTCP20 was changed to free the AWE and DFSMSDIR parameter storage from the CELLPOOL when a DFS3178E type error is detected and the LLB ITASK will not be posted to process and free the storage. The current cause of this error is when the LXBTCLBP field is zero, which is being fixed by the compare and swap logic added by this APAR. The DFSMSDIR storage length snapped in the 6701-MSS1 record with the label DFSMSDIR, for the DFS3178E error was increased to include all the parameter data. The process name in the message was changed from UNKNOWN to TCPPOST. Following is a sample of this message from DFSTCP20: DFS3178E 16:42:35 MSC DETECTED AN INTERNAL LOGIC ERROR, TCPPOST, RETCODE = 00000000, RSNCODE = 0000007C, LOSTSESS = NONE, MODULE = DFSTCP20, LINK = 022, LNK12T01 DFSCMS80 - Was changed to reduce the size of the MSC incore trace at the end of the output buffer to 2000 bytes, from 4000 bytes. Each entry (ID=SS) and exit (ID=EE) trace event in the table varies from 220 to 230 bytes. Two entries per DFSCMS00 dispatch are needed to record a single MSC dispatch event. So a 2000 byte table will be able to capture at least 4 events which is sufficient to record the activity that led up to most errors. This trace is logged in the 6701-MSS3 records. Also, additional fields were added for TCPIP to trace the DFSMSDIR fields in the SCIWORK control block. DFSMSCWA - Added reason code RSN_BUFERR = x'80' for errors returned when freeing a CELLPOOL buffer via the CSLSCBFR RELEASE call. This error is recorded in fields LXBRET and LXBRSN or CLBTEMP4 and CLBTEMP5 and documented in the CSLSRR macro. Also removed field SCIWLXB. Field CLBLXB is now used to store the LXB address. DFSCFEZ0 - The module was changed to trace the CLBQE field and related data for MSC links, in the 6701 link trace and 6701 MSS1 error records. Three trace headings are snapped as follows: DFSAWE - The AWE control block from CLBQE DFSMSDIR - DFSMSDIR parameter fields passed to IMS by IMS Connect. This area also includes the data fields that the DFSMSDIR entries point to. ICONDATA - This is the data passed to MSC by IMS Connect. It is from the DFSMSDIR field = MDIR_ICONMSGPTR. This data can be mapped to DSECT BUFMSHDR in the BUFMS macro i.e. this is where the data is moved to when it is processed by the TCPIP device dependent module (DDM) HWSIDXMT - Fixed problem that was searching for a matching partner ID's LINK block and returning a LINK block that belongs to a different partner ID. DFSTCPE0, DFSSXIN0, DFSTC7B0 - Use field CLBLXB to store and load the LXB address assigned to the link. Field SCIWLXB has been deleted. DFSTC7D0, DFSCRPB0 - Clear field CLBLXB at link shutdown and during IMS warmstart. LXB - Add fields LXBRET and LXBRSN to store the return and reason codes for CSLSCBFR errors. These return and reason codes are documented in the CSLSRR macro. ICLI- Add field CLBLXB to store the address of the LXB assigned to the MSLINK at link restart. Publication Changes: Message and Codes Volume 1 - GC18971207 Add the following active_process meanings to the DFS3178E message: TCPPOST The device dependent routine post handler (DFSTCP20) was processing a post of a message received from the SCI input message exit (DFSSXIN0) but the logical link the message was targeted for could not be determined, or an error on the CSLSCBFR RELEASE buffer request occurred. Diagnostic Guide - GC19301500 In Chapter 16, MSC - Multiple System Coupling service aids, Table 108. Significant fields in MSS1 and MSS2 records, In the TCP/IP Link Type section, add the following new fields that are traced: * DFSAWE, The input AWE from the SCI input message exit, DFSSXIN0. This AWE chain is initially queued to the LXBAWEHDR, then moved over to CLBQE by the TCPIP post handler, DFSTCP20 for processing by the DDM. The AWE is mapped by the DFSAWEXI macro. Field AWXI_MBRPLPTR contains the DFSMSDIR parameter list from SCI. * DFSMSDIR, The parameter list of double word parameters, containing the length and address of the parameters passed between MSC and IMS Connect through the SCI interface. * ICONDATA, The data from IMS Connect, pointed to by the DFSMSDIR parameter MDIR_ICONMSGPTR. This data is mapped by the BUFMS macro, starting at field BUFMSHDR.
Temporary fix
********* * HIPER * *********
Comments
REPINNED RP12/08/27 (ATXT) TO ADD POSTREQ PM71644 INFO. **** PE12/08/27 PTF IN ERROR. SEE APAR PM71644 FOR DESCRIPTION ×**** PE12/08/29 FIX IN ERROR. SEE APAR PM71644 FOR DESCRIPTION REPINNED RP13/03/20 (ATXT) TO ADD POSTREQ PM85201 INFO. **** PE13/03/20 PTF IN ERROR. SEE APAR PM85201 FOR DESCRIPTION ×**** PE13/03/20 FIX IN ERROR. SEE APAR PM85201 FOR DESCRIPTION
APAR Information
APAR number
PM51402
Reported component name
IMS V12
Reported component ID
5635A0300
Reported release
202
Status
CLOSED PER
PE
NoPE
HIPER
YesHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2011-11-02
Closed date
2012-05-04
Last modified date
2013-06-13
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK78507 UK78508
Modules/Macros
DFSCFEZ0 DFSCMS80 DFSCRPB0 DFSMSCWA DFSMSDIR DFSSXIN0 DFSTCPE0 DFSTCP20 DFSTC2A0 DFSTC4A0 DFSTC7B0 DFSTC7C0 DFSTC7D0 HWSIDXMT ICLI LXB
GC18912707 | GC19301500 |
Fix information
Fixed component name
IMS V12
Fixed component ID
5635A0300
Applicable component levels
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","label":"APARs - z\/OS environment"},"Platform":[{"code":"PF054","label":"z Systems"}],"Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
14 December 2020