27.12.2012 Views

z/VM: CP Commands and Utilities Reference - z/VM - IBM

z/VM: CP Commands and Utilities Reference - z/VM - IBM

z/VM: CP Commands and Utilities Reference - z/VM - IBM

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

DEFINE DIAGNOSE<br />

Usage Notes<br />

162 z/<strong>VM</strong>: <strong>CP</strong> <strong>Comm<strong>and</strong>s</strong> <strong>and</strong> <strong>Utilities</strong> <strong>Reference</strong><br />

<strong>and</strong> you do not specify PROT for this comm<strong>and</strong>, you are disabling protection<br />

<strong>and</strong> allowing the ESM to dynamically enable that protection.<br />

CHECKR15 YES<br />

indicates that the diagnose router should check register 15 upon return from the<br />

diagnose h<strong>and</strong>ler.<br />

CHECKR15 NO<br />

indicates that the diagnose router should not check register 15 upon return from<br />

the diagnose h<strong>and</strong>ler.<br />

1. If you do not specify the ENABLE oper<strong>and</strong>, a new DIAGNOSE code is initially<br />

in a disabled state after being defined. <strong>CP</strong> treats disabled DIAGNOSE codes<br />

as if they were never defined. If you try to use a disabled DIAGNOSE code in<br />

a program, <strong>CP</strong> will give you a program check specification exception.<br />

2. To load the DIAGNOSE processing code into <strong>CP</strong>’s system execution space,<br />

use the <strong>CP</strong>XLOAD comm<strong>and</strong> (page 101).<br />

3. To activate a new DIAGNOSE code after defining it, use the ENABLE<br />

DIAGNOSE comm<strong>and</strong> (page 429).<br />

4. To change the definition of an existing DIAGNOSE code after initialization, use<br />

the MODIFY DIAGNOSE comm<strong>and</strong> (page 615).<br />

5. To display information about a DIAGNOSE code (status, entry point name, <strong>and</strong><br />

privilege class), use the QUERY DIAGNOSE comm<strong>and</strong> (page 779).<br />

6. To display the real address of the <strong>CP</strong> DIAGNOSE code table block for a<br />

DIAGNOSE code, use the LOCATE DGNBK comm<strong>and</strong> (page 533).<br />

7. To deactivate a DIAGNOSE code after defining it, use the DISABLE<br />

DIAGNOSE comm<strong>and</strong> (page 266).<br />

8. Once defined, DIAGNOSE codes cannot be deleted. They may be altered in<br />

various appropriate ways, but they remain in existence until a SHUTDOWN or<br />

RESTART IPL is done.<br />

9. To remove the DIAGNOSE processing code from <strong>CP</strong>’s system execution<br />

space, use the <strong>CP</strong>XUNLOAD comm<strong>and</strong> (page 107).<br />

10. Many external security managers (ESMs) do not support DIAGNOSE codes<br />

above X'03FC'. For this reason, <strong>CP</strong> does not support DIAGNOSE codes above<br />

X'03FC'. The DIAGNOSE codes between X'0000' <strong>and</strong> X'03FC' are divided as<br />

follows:<br />

X'0000' to X'00FC'<br />

Reserved for <strong>IBM</strong> use<br />

X'0100' to X'01FC'<br />

Reserved for customer use<br />

X'0200' to X'03FC'<br />

Reserved for <strong>IBM</strong> use.<br />

11. When CHECKR15 YES is specified, the diagnose router will check register 15<br />

on return from the diagnose h<strong>and</strong>ler. If register 15 contains:<br />

RC = 0<br />

Processing was successful. Complete the guest instruction.<br />

RC = 4<br />

Processing failed due to a condition which would cause a guest<br />

program check. Simulate guest program interruption passed in R0.<br />

RC = 8<br />

Nullify the instruction.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!