0Cx

Explanation

A program interruption occurred, but no routine had been specified to handle this type of interruption. See the instruction description in Principles of Operation to find out how the instruction stops processing for the error condition.

The last digit of this completion code is a hexadecimal number that indicates the cause of the program interruption. Each X'0Cx' system completion code has a reason code, which in most cases equals the last digit. X'0C4' however, has several reason codes.
Code
Explanation
0C1
Operation exception. The reason code is 1.
0C2
Privileged-operation exception. The reason code is 2.
0C3
Execute exception. The reason code is 3.
0C4
One of the following exceptions or errors occurred:
4
Protection exception or software-detected protection error. The key of the storage area that the running program tries to access is different from that of the running program. The key of the running program can be obtained from the PSW key field. The key of the storage can be obtained using the IPCS LIST subcommand if the DISPLAY(MACHINE) option is in effect. The DISPLAY(MACHINE) option is not the IPCS-supplied default and must be enabled by explicitly asking for the data or as a consequence of having used SETDEF to make the DISPLAY(MACHINE) option the default. The programmer should determine whether the program is running with the correct key or whether the storage address is set up correctly.

Software-detected protection errors occur when the system, while processing a program interrupt, detects that the storage key of the allocated storage area being accessed is different from that of the running program. For software-detected protection errors, SDWAOPIC will be a non-zero value other than 4. Unlike protection exceptions, these can occur for storage that is allocated but is still in first-reference state. In this case, IPCS LIST will not be able to display the storage or its storage key. IPCS RSMDATA reports can be used to display the storage key of the allocated storage. Use report types VIRTPAGE for 31-bit storage including data spaces and HIGHVIRT for 64-bit storage.

The protection exception might have occurred when the program referenced a page that is protected with the PGSER PROTECT or IARV64 PROTECT service, or is defined as shared by the IARVSERV or IARV64 service with a view of read-only.

10
Segment-translation exception. This error is caused by one of the following:
  • A program that was running disabled attempted to reference storage while the page table for that storage was paged out. To correct the error, page-fix the storage before a program running disabled attempts to reference it.
  • A program attempted to reference storage that had not been obtained. To correct the error, allocate the storage before attempting to reference it.
  • A program running in a subspace attempted to reference storage that was not accessible to the subspace at the time of error. To correct the error, ensure that the program running in a subspace references only the storage assigned to that subspace, or storage that can be referenced by all subspaces.
  • A program attempted to reference restricted use common service area (RUCSA) storage that was not accessible to the address space at the time of the error. For more information, see Restricted use common service area (RUCSA/extended RUCSA) in z/OS MVS Initialization and Tuning Guide.
11
Page-translation exception. This error is caused by one of the following:
  • A program that was running disabled attempted to reference storage while that storage was paged out. To correct the error, page-fix the storage before a program running disabled attempts to reference it.
  • A program attempted to reference storage that had not been obtained. To correct the error, allocate the storage before attempting to reference it.
  • A program running in a subspace attempted to reference storage that was not accessible to the subspace at the time of error. To correct the error, ensure that the program running in a subspace references only the storage assigned to that subspace, or storage that can be referenced by all subspaces.
  • SMS abend. The reason code is X'12C'.
2B
ASTE-validity exception. This error is caused by one of the following:
  • During access-register translation, except as in the case of the following bullet, the access-list entry used designates an ASN-second-table entry in which bit 0 is not zero. The access-list entry is the one designated by the access register used.
  • During access-register translation of ALET 1 by BRANCH IN SUBSPACE GROUP, the subspace-ASTE origin (SSASTEO) in the dispatchable-unit control table designates an ASN-second-table entry in which bit 0 is not zero.
  • During a subspace-replacement operation, the subspace-ASTE origin (SSASTEO) in the dispatchable-unit control table designates an ASN-second-table entry in which bit 0 is not zero.
38
ASCE Type exception. This error is caused by one of the following:
  • A program attempted to reference storage that had not been obtained. To correct the error, allocate the storage before attempting to reference it.
  • A program running in 64-bit addressing mode used a 31-bit pointer that had the high order bit on.
    Note: Programs running in 31-bit mode using 4-byte pointers often use the high order bit of a 4-byte pointer to indicate 31-bit addressing mode, versus 24-bit mode. Also, certain instructions will set the high order bit on in registers to indicate addressing mode.
  • A program running in 64-bit addressing mode loaded a 31-bit pointer into a 64-bit register and did not clear the high half of the register. To correct the error, ensure that the program running in 64-bit addressing mode clears the 33 high-order bits of any register when loading a 31-bit pointer into that register.
  • A program that was running disabled attempted to access storage that was not obtained as DREF.
39
Region-First exception. While running in 64-bit addressing mode, one of the following errors occurred:
  • A program attempted to reference storage that had not been obtained. To correct the error, allocate the storage before attempting to reference it.
  • A program used a 31-bit pointer that had the high order bit on.
    Note: Programs running in 31-bit mode using 4-byte pointers often use the high order bit of a 4-byte pointer to indicate 31-bit addressing mode, versus 24-bit mode. Also, certain instructions will set the high order bit on in registers to indicate addressing mode.
  • A program loaded a 31-bit pointer into a 64-bit register and did not clear the high half of the register. To correct the error, ensure that the program running in 64-bit addressing mode clears the 33 high-order bits of any register when loading a 31-bit pointer into that register.
  • A program that was running disabled attempted to access storage that was not obtained as DREF.
3A
Region-Second exception. While running in 64-bit addressing mode, one of the following errors occurred:
  • A program attempted to reference storage that had not been obtained. To correct the error, allocate the storage before attempting to reference it.
  • A program used a 31-bit pointer that had the high order bit on.
    Note: Programs running in 31-bit mode using 4-byte pointers often use the high order bit of a 4-byte pointer to indicate 31-bit addressing mode, versus 24-bit mode. Also, certain instructions will set the high order bit on in registers to indicate addressing mode.
  • A program loaded a 31-bit pointer into a 64-bit register and did not clear the high half of the register. To correct the error, ensure that the program running in 64-bit addressing mode clears the 33 high-order bits of any register when loading a 31-bit pointer into that register.
  • A program that was running disabled attempted to access storage that was not obtained as DREF.
3B
Region-Third exception. While running in 64-bit addressing mode, one of the following errors occurred:
  • A program attempted to reference storage that had not been obtained. To correct the error, allocate the storage before attempting to reference it.
  • A program used a 31-bit pointer that had the high order bit on.
    Note: Programs running in 31-bit mode using 4-byte pointers often use the high order bit of a 4-byte pointer to indicate 31-bit addressing mode, versus 24-bit mode. Also, certain instructions will set the high order bit on in registers to indicate addressing mode.
  • A program loaded a 31-bit pointer into a 64-bit register and did not clear the high half of the register. To correct the error, ensure that the program running in 64-bit addressing mode clears the 33 high-order bits of any register when loading a 31-bit pointer into that register.
  • A program that was running disabled attempted to access storage that was not obtained as DREF.
0C5
Addressing exception. The reason code is 5.
0C6
Specification exception. The reason code is 6.
0C7
Data exception. The reason code is whatever the data exception code is in field SDWADXC in the SDWA (systems diagnostic work area).
0C8
Fixed-point-overflow exception. The reason code is 8.
0C9
Fixed-point-divide exception. The reason code is 9.
0CA
Decimal-overflow exception. The reason code is A.
0CB
Decimal-divide exception. The reason code is B.
0CC
Exponent-overflow exception. The reason code is C.
0CD
Exponent-underflow exception. The reason code is D.
0CE
Significance exception. The reason code is E.
0CF
Floating-point-divide exception. The reason code is F.

System action

The system abnormally ends the task, unless a recovery routine was provided to handle the interruption. The hardware action is given in Principles of Operation.

System programmer response

Determine whether the problem program or control program was in error.

If the problem program contained an error, correct it, and run the job step again.

Source

Supervisor control