gtpg2m3tGeneral Macros

SERRC-System Error

This general macro causes a storage dump and sends a message to the system operator via a CRAS terminal. It may be used whenever an operational program or the control program detects an abnormal condition that requires a dump of main storage as an aid to error analysis.

Note:
All system activity is suspended while the storage dump is written. If the cause of the error is well understood and less than 32KB of data is required to fully document the problem, use the SNAPC macro. The SNAPC macro uses far fewer processor resources; in particular, system activity is not halted during its processing.

Format




label
A symbolic name may be assigned to the macro statement.

action
Specifies the action to be taken by the system error routine upon completion of the dump:

E
Exit the entry control block (ECB) if one is associated with the error. Otherwise, return to the CPU Loop.

R
Return to next sequential instruction.

C
Catastrophic error, re-IPL the system.

senum
Specifies the 6-digit hexadecimal system error number (range: X'000001' to X'FFFFFF') used to identify the dump. TPF system error numbers are documented in Messages (System Error and Offline) and Messages (Online). Code this parameter in one of the following ways:

hexnum
A hexadecimal system error number in the range X'000001' to X'FFFFFF'.

(errnum)
A symbolic system error number, as defined in CZ1SE (IBM error numbers), enclosed in parentheses.

Rx
The symbolic name of a register containing the system error number. Valid symbols are R0 through R7, R14, and R15. If MSG=YES is coded, then Rx must not specify R0. Rx must not specify the same register as Ry or Rz.

PREFIX=letter
The prefix is an uppercase alphabetic character that is concatenated with the system error number in the console message and in the dump. The letters I and W-Z are reserved for IBM use. The default is PREFIX=I for IBM code, and PREFIX=U for non-IBM code.

MSG
Specifies one of the following:

YES
R0 must contain the address of a user supplied message that is to be appended to the operator notification of the dump.

NO
Specifies there is no user supplied message.

ECB
Specifies whether or not an ECB is associated with this error.

YES
An ECB is associated with this error. Dump the ECB and all working storage mapped in the EVM.

NO
No ECB is associated with this error. If this option is coded, no working storage will be dumped unless there is a Dump Override Table entry associated with this system error that specifies an area of working storage, or unless a portion of working storage has been specified using the LIST or SLIST parameters.

LIST
Specifies the location of one or more LISTC macro calls, which are used to identify additional main storage areas to be dumped. Specify one of the following:

label2
A symbolic label.

Ry
The name of a register containing the address. Valid register names are R1 through R7, R14, and R15. Ry cannot specify the same register as Rx or Rz. If senum is coded as a register, SLIST can not specify the same register as senum and cannot specify R14 or R0. Parentheses cannot be used. Ry cannot be R0 if MSG=YES is coded.

SLIST
Specifies the address of a user-defined list of storage areas to be dumped. Specify one of the following:

label3
A symbolic label (EBW034, for example).

Rz
The name of a register containing the address. Valid register names are R0 through R7, R14, and R15. Rz cannot specify the same register as Rx or Ry. Rz cannot be R0 if MSG=YES is coded.

SYSDUMP
Specifies whether a dump of system storage will be performed.

YES
This is the default for control program errors.

NO
This is the default for operational program errors. When SYSDUMP=NO, dump overrides created with the IDOTB macro or the ZIDOT command have no effect.

Note:
System storage will always be dumped if there is no ECB associated with the error.

DSECT=YES
This format of the macro is used to generate a DSECT describing the macro expansion, and the equates associated with various macro options. It is intended for CP use only.

OPR
Specifies whether the dump will be an OPR or a CTL dump as follows:

YES
Specifies that if the dump is in the control program, the dump will display as an OPR dump. This allows the dump to be controlled by the ZASER command with the DUPL or NODUPL parameter. You can specify this value only if you specify NO for the SYSDUMP parameter.

NO
Specifies that if the dump is in the control program, the dump will display as a CTL dump.

Entry Requirements

If an ECB is associated with the error, the address of the ECB must be in R9. This address must be valid for the address space in which the macro is invoked.

Return Conditions

Programming Considerations

Examples