z/OS MVS System Codes
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


C0D

z/OS MVS System Codes
SA38-0665-00

C0D

Explanation

An unexpected error occurred. For example , a system component experienced an unexpected program check or perhaps an I/O device returned data that was not expected. This abend may be used for entry into a recovery routine that will capture additional documentation and then attempt retry. In other cases, the C0D abend will be percolated to an application recovery routine or another system component recovery routine.

Several components utilize C0D for these unexpected error situations and therefore it becomes necessary to utilize additional information to determine the specific component to determine the exact nature of this unexpected error. Continue reading for additional diagnostic techniques to help identify the nature of your specific instance of this C0D abend.

Note: Some Common C0D reason codes are documented below for convenience. This is not an all inclusive list. In most cases you will need IBM® assistance to interpret the reason codes based on the specific component which issues the abend.
The system may provide a hexadecimal reason code to describe the error.
Code
Explanation
Start of change0025xxxxEnd of change
Start of changeInternal reason codes for Basic HyperSwap® socket support.End of change
2A00010x or 2A00020x
After a page fixing request that specified a task control block (TCB) address of zero, the system received a corresponding page freeing request with a specific TCB address. The system could not locate the necessary control blocks to process the request.
5E000101
While processing a page fixing request, the system encountered a fixed page that was not backed with central storage. To satisfy the request, the page must be backed.

The reason code, if any, and the location at which the C0D ABEND was issued, are shown in an entry of type RCVY ABT in the system trace table.

For an indexed sequential access method (ISAM) request, the system found an excess number of error input output blocks (IOB). The probable cause of the problem is that an application neglected to free the dynamic buffers associated with a READ macro.

The following reason codes are used by the input/output supervisor HyperSwap function (IOSH):

IOSHSAPI
80000002
Attach macro request failure.
80000003
Error attaching subtask.
80000004
ETCRE macro request failure.
80000005
CSVQUERY macro request failure.
80000006
IEANTDL macro request failure.
80000007
IEANTRT macro request failure.
80000008
IEANTCR macro request failure.
80000009
Error removing SSID name from master SSID_Array.
8000000A
RESMGR macro ADD request failure.
8000000B
RESMGR macro DELETE request failure.
8000000C
ENFREQ macro LISTEN request failure.
8000000D
ENFREQ DELETE request failure.
8000000F
IDENTIFY macro request failure.
80000010
Maximum number of subtask restart attempts reached.
IOSHSSUB
80010001
ESTAEX macro request failure.
80010002
NUCLKUP macro request failure.
IOSHSENF
80020001
UCBPIN macro request failure.
80010002
NUCLKUP token count error occurred.
IOSHSRDR
80030001
IRXEXCOM routine call failure.

System action

The system may write a logrec data set error record, may write a dump, and may write messages about the problem. The system issues an abend to the current task.

Operator response

If the system programmer asks for an SVC dump, set the following SLIP trap:
SLIP SET,COMP=C0D,ACTION=SVCD,END

System programmer response

Do the following:
  1. If a dump or a logrec data set error record was not written with the abend, ask the operator to set a SLIP trap to obtain an SVC dump.
  2. If you are unable to identify a responsible component from the logrec record symptoms such as CSECT NAME and COMPID, then use additional information from logrec data set records, dumps, or both to identify the component that is the source of the ABEND. See the chapter s on Recording Logrec Error Records and on System Trace in z/OS MVS Diagnosis: Tools and Service Aids for details on how to interpret logrec records and System Trace entries. The failing PSW address, in most cases, will reflect the component that issued the ABEND macro. To ensure that the PSW address corresponds to an ABEND macro invocation, refer to the failing instruction text in the logrec record or dump. The failing instruction should have been "0A0D".

    There are some cases where the CALLRTM TYPE=ABTERM macro is used and this will cause the error PSW instruction address to reference a system or a user program that might be in some kind of wait. Hence, the failing instruction text might be an "0A01" or some other instruction. This might be due to the asynchronous nature of the recovery associated with a CALLRTM. For this case, you will need a dump that contains SYSTEM TRACE.

  3. Search the System Trace for an entry of the type RCVY ABT corresponding to the C0D ABEND, and note the PSW address. Once you have determined the PSW address for the program responsible for invoking the ABEND or CALLRTM macro, use the IPCS WHERE command to find the module name.
    • If the module is not an IBM module, continue diagnosis with the module.
    • If the module is an IBM module, search problem reporting data bases for a fix for the problem. If no fix exists, contact the IBM Support Center. Provide the messages, the logrec data set record, the SYSOUT output for the job, and the dump.

Programmer response

For an ISAM request error, fix the program and run the job again. For a problem in obtaining storage, fix the storage request and run the job again.

Source

Code C0D can be issued by many components, including:
  • Real storage manager (RSM)
  • Auxiliary storage manager (ASM)
  • Contents supervision (CSV)
  • Program Call/authorization (PC/AUTH)
  • Input/output supervisor (IOS)
  • Access methods (e.g. BSAM, QSAM)

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014