| Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. | 
MDISK
Control Block Contents  
   MDISK DSECT
Cross Reference (Contains links to field and bit definitions)
MDISK Prolog
 Name       : Minidisk Control Block
 Description: Mini-disk Control Block
 DSECT      : MDISK
 Function   : This control block maps a defined minidisk for
              a virtual machine.
 Located by : VDEVMDSK - Mini-disk block for Reserve/Release
 Created by : HCPVDSLK
 Deleted by : HCPDTDEV, HCPVRILF, HCPVRIRL
MDISK Control Block Content
MDISK DSECT
Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      MDISK          Mini-disk Control Block
     ** FIELDS FOR ATTACH / DETACH
0000    0 Signed       4 MDINEXT        NEXT MDISK ON THIS REAL DEVICE
0004    4 Signed       4 MDILINKS       NUMBER OF LINKS TO THIS EXTENT
     ** FIELDS FOR RELEASE PROCESSING
0008    8 Dbl-Word     8 MDISIOQS (0)   NORMAL START REQUEST QUEUES
0008    8 Signed       4 MDIDEOWD       ANCHOR FOR QUEUE OF UNSOLICITED
                                        IORBKS OWED TO DEVICES
000C   12 Signed       4 MDIDEPND       ANCHOR FOR QUEUE OF PENDING
                                        UNSOLICITED IORBKS
0010   16 Address      4 MDIRTRQ        ADDRESS OF TIMER REQUEST BLOCK
0014   20 Address      4 *              RESERVED FOR FUTURE IBM USE
0018   24 Dbl-Word     8 MDIDIAQS (0)   DIAGNOSE I/O QUEUES
0018   24 Address      4 MDIQWAIT       ANCHOR FOR QUEUE OF IORBKS
                                        WAITING FOR RELEASE TO RETRY
                                        DIAGNOSE I/O
001C   28 Address      4 *              RESERVED FOR FUTURE IBM USE
     ** LOCKS FOR ACCESS TO THE MINIDISK EXTENT
0020   32 Dbl-Word     8 MDILLOCK (0)   LOGICAL LOCK --- DEVICE RESERVED
0020   32 Signed       4 MDIRSVD (0)    VDEVBK HOLDING DEVICE RESERVED
0020   32 Address      4 MDIRVDEV       ADDRESS OF VDEV RESERVING
                                        MINI-DISK (BASE VDEV IF MULTIPLE
                                        EXPOSURE DEVICE)
0024   36 Bitstring    1 MDISTAT        STATUS FLAGS
          1... ....      MDIRESVD       X'80' INDICATES ACTIVE RESERVE
          .1.. ....      MDIRRSVP       X'40' REAL RESERVE IS PENDING
          ..1. ....      MDIRELPD       X'20' REAL RELEASE IS PENDING
          ...1 ....      MDIWRKAL       X'10' Virtual working allegiance
                                        is to be simulated
0025   37 Bitstring    1 MDILPUM        MASK FOR LOGICAL PATH ON WHICH
                                        RESERVE WAS MADE
0026   38 Bitstring    1 MDIMDCFL       Flag byte for minidisk caching
          1... ....      MDITHUD        X'80' MDC purge on backend is
                                        required
          .1.. ....      MDIOVLAP       X'40' Mini-disk overlapped -
                                        purge cache
          ..11 ....      MDIMDCA        X'30' MDC authorization bits used
                                        only when setting MDIHSHID
          ...1 ....      MDIMDCD        X'10' MDC default authorization
          .... 1...      MDIMDCP        X'08' MDC prohibited for this
                                        mdisk
          .... .1..      MDIRECAC       X'04' Do record caching for this
                                        mdisk
0027   39 Bitstring    1 MDISMFLG       miscellaneous MDISK flags
          1... ....      MDISMFPO       X'80' The minidisk has a full
                                        pack overlay link to it
          .1.. ....      MDIEXCLU       X'40' Exclusive link held on
                                        minidisk
          ..1. ....      MDIDVFP        X'20' Minidisk created using
                                        DEVNO option
          ...1 ....      MDIQDSK        X'10' Minidisk is a Vdisk
          .... 1...      MDIQDSKP       X'08' Minidisk is a PRIVATE Vdisk
0028   40 Dbl-Word     8 MDILOCK (0)    LOCKWORD FOR RESERVE/RELEASE
                                        STATUS
0028   40 Dbl-Word     8 MDIPLOCK (3)   PHYSICAL LOCK --- EXTENT IN USE
0040   64 Dbl-Word     8 MDIQLOCK (3)   LOCKWORD FOR QUEUE MANIPULATION
     MDISK extent in cylinders (if CKD or ECKD) or blocks (if FBA) These
     values are unique for this real device; no other MDISK block represents
     this exact extent, although other MDISK block extents may overlap this
     extent. Warning: some CKD/ECKD-only routines cannot handle cylinder
     numbers larger than 65535; FBA routines can handle 2**32-1.
0058   88 Dbl-Word     8 MDIVEXTN (0)   Virtual DASD cylinder/block
                                        extents
0058   88 Signed       4 MDIVSEXT       Virtual DASD start cylinder/block
005C   92 Signed       4 MDIVEEXT       Virtual DASD end cylinder/block
     All MDISK blocks representing existing virtual dasds (whether
     "minidisks" or "tdisks" but not "dedicated dasds") are chained in no
     particular order from the RDEV block. The virtual dasd VDEV blocks in
     use on this extent are doubly-chained from this MDISK block in
     descending "link access mode" order. The first VDEV's backward pointer
     points to the end of the chain.
0060   96 Signed       4 MDIVLINK       Pointer to next linked VDEV
     Counts representing the sum of all VDEVs chained from this MDISK having
     the specified "link access mode." See also MDIEXCLU bit in MDISMFPO
     byte. MDILINKS = MDIRDCNT + MDIWRCNT. A stable-read link would be
     counted once in each of MDIRDCNT and MDISTCNT. These counts summarize
     the thousands of VDEVs that could be chained from this MDISK block.
0064  100 Signed       4 MDIRDCNT       Read link count for minidisk
0068  104 Signed       4 MDIWTCNT       Write link count to minidisk
006C  108 Signed       4 MDISTCNT       Stable link count for minidisk
     The minidisk owner is either the user who has the MDISK statement in
     the directory or the user who created this extent (not using the
     directory).
0070  112 Character    8 MDIOUSER       Mini-disk owner userid
0078  120 Signed       2 MDIOVDEV       Mini-disk owner VDEV number
     MDIHSHID may contain one of the following values:
     Zero - This minidisk isn't eligible for MDC caching
     RDEVHSID - when positive, the minidisk is eligible for MDC caching and
     this field is used to create the MDC hash key. When negative (bit 0 is
     on), MDC caching is not permitted for this minidisk.
     X'FFFF' - this minidisk is an FBA device and is not page aligned and is
     not eligible for MDC caching.
     Note that if MDIHSHID is positve, caching is allowed provided that it
     permitted at the system level.
007A  122 Signed       2 MDIHSHID       MDC Hash ID
     MDISK blocks representing tdisks are chained in extent-order from the
     CPVOLume extent EXTBK within which they reside. This mechanism is used
     to distinguish free tdisk space from tdisk space in use.
007C  124 Signed       4 MDITNEXT       Ptr to next MDISK on EXTBK chain
0080  128 Signed       4 MDIEXTBK       Ptr to parent EXTBK
     MDISK blocks representing Vdisks use the following field to chain in
     the Qdisk block.
0084  132 Address      4 MDIQDISK       Address of QDISK block for Vdisk
     Miscellanea
0088  136 Signed       4 MDICYLMP       Minidisk cache cylinder map. If
                                        high order bit on, points to
                                        address of cyl map indicating the
                                        format of each cylinder. If off,
                                        then so far entire mdisk is std
                                        and this field contains the DPSBK
                                        address for that size. Updated
                                        with Compare and Swap.
          00000012       MDISIZE        ((*-MDISK+7)/8) SIZE IN DWS FOR
                                        FREE/FRET
MDISK Storage Layout
          
*** MDISK - Mini-disk Control Block
*
*     +---------------------------+---------------------------+
*   0 |         MDINEXT           |         MDILINKS          |
*     +---------------------------+---------------------------+
*   8 |         MDIDEOWD          |         MDIDEPND          |
*     +---------------------------+---------------------------+
*  10 |         MDIRTRQ           |///////////////////////////|
*     +---------------------------+---------------------------+
*  18 |         MDIQWAIT          |///////////////////////////|
*     +---------------------------+------+------+------+------+
*  20 |         MDIRVDEV          |:STAT |:LPUM |:MDCFL|:SMFLG|
*     +---------------------------+------+------+------+------+
*  28 |                                                       |
*     =                       MDIPLOCK                        =
*     |                                                       |
*     +-------------------------------------------------------+
*  40 |                                                       |
*     =                       MDIQLOCK                        =
*     |                                                       |
*     +---------------------------+---------------------------+
*  58 |         MDIVSEXT          |         MDIVEEXT          |
*     +---------------------------+---------------------------+
*  60 |         MDIVLINK          |         MDIRDCNT          |
*     +---------------------------+---------------------------+
*  68 |         MDIWTCNT          |         MDISTCNT          |
*     +---------------------------+---------------------------+
*  70 |                       MDIOUSER                        |
*     +-------------+-------------+---------------------------+
*  78 |  MDIOVDEV   |  MDIHSHID   |         MDITNEXT          |
*     +-------------+-------------+---------------------------+
*  80 |         MDIEXTBK          |         MDIQDISK          |
*     +---------------------------+---------------------------+
*  88 |         MDICYLMP          | 8C
*     +---------------------------+
*
*** MDISK - Mini-disk Control Block
MDISK Cross Reference
Symbol Dspl Value -------------- ---- ----- MDICYLMP 0088 MDIDEOWD 0008 MDIDEPND 000C MDIDIAQS 0018 MDIDVFP 0027 20 MDIEXCLU 0027 40 MDIEXTBK 0080 MDIHSHID 007A MDILINKS 0004 MDILLOCK 0020 MDILOCK 0028 MDILPUM 0025 MDIMDCA 0026 30 MDIMDCD 0026 10 MDIMDCFL 0026 MDIMDCP 0026 08 MDINEXT 0000 MDIOUSER 0070 MDIOVDEV 0078 MDIOVLAP 0026 40 MDIPLOCK 0028 MDIQDISK 0084 MDIQDSK 0027 10 MDIQDSKP 0027 08 MDIQLOCK 0040 MDIQWAIT 0018 MDIRDCNT 0064 MDIRECAC 0026 04 MDIRELPD 0024 20 MDIRESVD 0024 80 MDIRRSVP 0024 40 MDIRSVD 0020 MDIRTRQ 0010 MDIRVDEV 0020 MDISIOQS 0008 MDISIZE 0088 00000012 MDISMFLG 0027 MDISMFPO 0027 80 MDISTAT 0024 MDISTCNT 006C MDITHUD 0026 80 MDITNEXT 007C MDIVEEXT 005C MDIVEXTN 0058 MDIVLINK 0060 MDIVSEXT 0058 MDIWRKAL 0024 10 MDIWTCNT 0068
Last updated on 6 Jun 2001 at 11:51:34 EDT.
Copyright IBM Corporation, 1990, 2001