z/OS DFSMSdfp Advanced Services
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


EXTENTS: Storage Area Where Extents Are Returned

z/OS DFSMSdfp Advanced Services
SC23-6861-01

EXTENTS=addr
Specifies the address where extent information is to be returned. You specify this parameter only when you also specify MAP=VOLUME to request that unallocated space information from the volume is to be returned.
When RTA4BYTE=YES is specified the following occurs:
  • Information about free extents uses mapping macro ICVEDT02 (see Using Macro ICVEDT02 to Map the Extents Area for ICVEDT02 format).
  • EXTENTS= specifies the address of a control block (ICVEDT02) used to pass 4 byte relative track addresses of the unallocated space. You provide this storage, and you must use this mapping macro to initialize it.
    Prior to calling CVAF, initialize the ICVEDT02 control block as follows:
    • Place "ICVEDT02" in the first 8 bytes (DT2X7EYE).
    • Place the total area length, in bytes, in DT2X7LEN. This value is 36 + (8 * the value in DT2X7ENT).
    • Set the control block level number to "1" (DT2X7LEV). (Note that this value can be different in a possible future release, if IBM® makes changes that effect the control block.)
    • Set the remaining fields in the control block static area DT2X7FLG through DT2X7RE2 to zero prior to calling CVAF for the first time. Leave these fields unchanged from the way the previous call returned them, when calling for additional extents.
    • Set DT2X7ENT to the total number of extent descriptor entries that will fit in the storage you provide.
    • Place the relative track address (RTA) at which CVAF should start the search into the first four bytes of the first extent area DT2RTAST(1).

      CVAF updates the first extent entry with information about the next free extent found that has a higher starting RTA than that provided. Each subsequent extent entry is filled in with information about additional free space extents (in ascending RTA order).

      For all calls, if all the unallocated extents from the volume are returned before the provided storage area is filled, the remaining entries are set to zero. CVAF will now set return code 4 in register 15, and will set the CVSTAT field to X'20' to indicate end of data.

      If End Of Data is reached before the provided storage area is filled with unallocated extents, CVAF will set return code 4 in register 15. If return code 0 is set in register 15, you can call CVAF again to get the remaining unallocated space information if there is any. Do NOT modify ANY header information in ICVEDT02, as CVAF can have saved internal use restart information there. Instead, copy the last ending RTA+1 (DT2RTAED) returned from the previous CVAF search into DT2RTAST.

When RTA4BYTE=NO is specified or defaulted the following occurs:
  • Information about free extents has the format of XXYYZ (see RTA4BYTE: Specify the Type of Extent Area Used for XXYYZ format).
  • EXTENTS= is the address of a 1-byte count field containing the number of 5-byte entries that follow. You provide this storage area. The length of the area, in bytes, is 1 + ( count * 5), where count is the value of the first byte of the area. The first two bytes ("XX") of the first 5-byte extent area entry, is the relative track address (RTA) at which CVAF will start the search. CVAF updates the first entry with information about the next free extent found that has a higher starting RTA than that supplied. Each subsequent entry is filled in with information about additional free extents (in ascending track address order).
  • CVAF can be called multiple times, as needed, to retrieve more extents than the area can hold in a single call. The first extent returned is the first free extent after the relative track address ("XX") recorded in the first extent (XXYYZ) in the area.
  • To retrieve the first free extent on the volume, set "XX" in the first entry to zero. When calling additional times, set "XX" in the first entry to the LAST relative track address returned by the previous call.

Recommendation: If you use larger volumes, specify RTA4BYTE=YES when you request extent information. If an extent is beyond the 64x1024 tracks boundary when the program specifies RTA4BYTE=NO or allows the default, the CVAF request fails with a CVSTAT of STAT075.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014