Use the UCBINFO PAVINFO macro to obtain selected information applicable to each exposure (base and alias) of a Parallel Access Volume (PAV).
The standard form of the PAVINFO option of the UCBINFO macro is written as follows:
Syntax | Description |
---|---|
name | name: symbol. Begin name in column 1. |
␢ | One or more blanks must precede UCBINFO. |
UCBINFO | |
␢ | One or more blanks must follow UCBINFO. |
PAVINFO | |
PAVINFOSUM=NO | Default: NO |
PAVINFOSUM=YES | |
,PAVAREA=pavarea addr | pavarea addr: RX-type address or register (2) - (12). |
,PAVLEN=pavarea length addr | pavarea lenth addr: RX-type address or register (2) - (12). |
,SCHINFO=NO | Default: NO |
,SCHINFO=YES | |
,EXTFORMAT=NO | Default: NO |
,EXTFORMAT=YES | |
,OUTVERSION=outver | Default: 3 |
,DEVN=devn addr | devn addr: RS-type address or register (2) - (12). |
,IOCTOKEN=ioctoken addr | ioctoken addr: RX-type address or register (2) - (12). |
,PLISTVER=IMPLIED_VERSION | |
,PLISTVER=MAX | Default: IMPLIED_VERSION |
,PLISTVER=plistver | plistver: 2 |
,RETCODE=retcode addr | retcode addr: RX-type address or register (2) - (12). |
,RSNCODE=rsncode addr | rsncode addr: RX-type address or register (2) - (12). |
The parameters are explained as follows:
If you set the input IOCTOKEN (specified by ioctoken addr) to binary zeros, UCBINFO sets IOCTOKEN to the current I/O configuration token.
If you can tolerate the size change, IBM recommends that you always specify PLISTVER=MAX on the list form of the macro. Specifying MAX ensures that the list-form parameter list is always long enough to hold all the parameters you might specify on the execute form; in this way, MAX ensures that the parameter list does not overwrite nearby storage.
When the UCBINFO PAVINFO macro returns control to your program, GPR 15 (or retcode addr, if you coded RETCODE) contains a return code, and GPR 0 (or rsncode addr, if you coded RSNCODE) contains a reason code.
Hexadecimal Return Code | Hexadecimal Reason Code | Meaning and Action |
---|---|---|
00 | None | Meaning: The PAVINFO function completed
successfully. Action: None. |
04 | None | Meaning: Program error. No UCB exists
for the device number specified in the DEVN parameter. Action: Correct the device number and reissue the macro. |
08 | 01 | Meaning: Program error. A caller in AR
mode specified an ALET that was not valid. Action: Correct the ALET and reissue the macro. |
08 | 02 | Meaning: Program error. An error occurred
when the system tried to access the caller's parameter list. Action: Ensure that you have met the environmental requirements for the macro, and reissue the macro. |
08 | 03 | Meaning: Program error. An unauthorized caller specified the UCBPTR parameter.
The UCBPTR parameter can be specified by authorized callers only. Action:Specify the DEVN parameter instead of the UCBPTR parameter to indicate the device for which the system is to obtain information. |
08 | 05 | Meaning: Program error. An error occurred
when the system referenced the caller-supplied area specified in the
IOCTOKEN parameter. This reason code is valid only for callers using
the IOCTOKEN parameter. Action: Correct the IOCTOKEN parameter and reissue the macro. |
08 | 0A | Meaning: Program error. An error occurred
when the system attempted to reference the area specified by the PAVAREA
parameter. Action: Correct the address specified on the PAVAREA parameter and reissue the macro. |
08 | 0B | Meaning: The value specified on the
SCHSET keyword is not valid. Action: Enter a valid value. |
0C | None | Meaning: Environmental error. The I/O
configuration token supplied through the IOCTOKEN parameter is not
current. This return code is valid only for callers using the IOCTOKEN
parameter. Action: Obtain the current I/O configuration token by issuing an IOCINFO macro or by setting the input IOCTOKEN parameter in the UCBINFO macro to zero. |
1C | 01 | Meaning: Program error. The device number provided by the caller specifies
a device that is not a DASD or is a PAV alias device. Action: Correct the DEVN parameter and reissue the macro. |
1C | 02 | Meaning: Program error. The work area
specified with the PAVAREA parameter is not large enough to contain
the minimum amount of data. No data is returned. Action: Increase the size of the specified work area and reissue the macro. |
1C | 03 | Meaning: Program error. The work area
specified with the PAVAREA parameter is not large enough to contain
an entry for each alias device. Action: Increase the size of the specified work area and reissue the macro. |
20 | None | Meaning: System error. An unexpected error
occurred. Action: Supply the return code to the appropriate IBM support personnel. |
28 | None | Meaning: Program error. The device number provided by the caller is an
alias device number of a parallel access volume. The caller must specify
the base device number. Action: Correct the DEVN parameter and reissue the macro. |
UCBINFO PAVINFO,DEVN=DEVNUM,PAVAREA=INFOAREA,PAVLEN=AREALEN, X
RETCODE=INFORTCD
.
.
.
DS 0D
DEVNUM DS H
INFOAREA DS CL256
AREALEN DS F
INFORTCD DS F