Programming Interface Information: This information is NOT intended to be
used as Programming Interfaces of z/VM.

DRBK

Prolog  

Control Block Contents  
   DRBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


DRBK Prolog

 Name       : HCPDRBK
 Description: CP Data Request Block
 DSECT      : DRBK
 Function   : The DRBK contains information used during
              open, read and close processing
 Located by : OFBDRB chain of open Data Request Blocks
              ACSPOPEN chain of pre-openned DRBKs
 Created by : DRBKs are created by any routine that
              wishes to read a CMS file.
              DRBKs are created by CPCACHE processing.
 Deleted by : Generally, whoever creates it.
              Although DRBKs created by CPCACHE
              will be deleted by HCPZIR during release
              processing.

 

DRBK Control Block Content


DRBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      DRBK           CP Data Request Block
     The user fields should remain at the front of the block
0000    0 Dbl-Word     8 DRBUSRD1       Reserved for non-IBM use
0008    8 Dbl-Word     8 DRBUSRD2       Reserved for non-IBM use
0010   16 Signed       4 DRBUSRF1       Reserved for non-IBM use
0014   20 Signed       4 DRBUSRF2       Reserved for non-IBM use
0018   24 Signed       2 DRBUSRH1       Reserved for non-IBM use
001A   26 Signed       2 DRBUSRH2       Reserved for non-IBM use
001C   28 Bitstring    1 DRBUSRX1       Reserved for non-IBM use
001D   29 Bitstring    1 DRBUSRX2       Reserved for non-IBM use
001E   30 Bitstring    1 DRBUSRX3       Reserved for non-IBM use
001F   31 Bitstring    1 DRBUSRX4       Reserved for non-IBM use
0020   32 Address      4 DRBFWD         A( next DRBK on open chain )
0024   36 Address      4 DRBOFB         A( OFB )
0028   40 Character   16 DRBFID (0)     File id, filename-filetype
0028   40 Character    8 DRBFIDFN       File id, filename portion
0030   48 Character    8 DRBFIDFT       File id, filetype portion
0038   56 Character    8 DRBMEMBR       Member name (or x'00' if none)
0040   64 Signed       4 DRBMEMS        Member starting record number
0044   68 Signed       4 DRBMEME        Member ending record number
0048   72 Signed       4 *              Reserved for future IBM use
004C   76 Signed       4 *              Reserved for future IBM use
0050   80 Address      4 DRBPOPEN       A(next DRBK on pre-open chain)
0054   84 Bitstring    1 DRBFLAG1       DRBK flags. Look at HCPZIOPX for
                                        bit conflict checking.
          1... ....      DRBNDRCT       X'80' DRBBUFAD --> indirectly
                                        to bufr
          ...1 ....      DRBUNIQE       X'10' Don't search for OFBK
          .... 1...      DRBNDFER       X'08' Don't stack CPEBK
          .... .1..      DRBPHYSR       X'04' Physical Read performed
          .... ..1.      DRBPHYSW       X'02' Physical Write performed
          .... ...1      DRBSEUDO       X'01' Perform Pseudo-OPEN
0055   85 Bitstring    1 DRBFLAG2       DRBK flags. Look at HCPZIOPX for
                                        bit conflict checking.
          1... ....      DRBOUTPT       X'80' File is for output
          .1.. ....      DRBBUFFR       X'40' Delay write till buffer
                                        full
          ..1. ....      DRBSPARS       X'20' File is a CMS "sparse file"
          ...1 ....      DRBNOUPD       X'10' Need't read block before
                                        writing
          .... 1...      DRBCACHE       X'08' File has been cached. This
                                        is sometimes referred to as a
                                        pre-opened file. Hence the chain
                                        of DRBKs anchored on ACSPOPEN.
          .... .1..      DRBCNTRY       X'04' Century for DRBDATIM (0=19,
                                        1=20)
0056   86 Character    1 DRBRECFM       Record format (c'V' or c'F'). The
                                        file RECFM is stored here as a
                                        single character, even though in
                                        the FSBK, which you aren't
                                        supposed to look at anyway, it is
                                        stored as a single bit.
0057   87 Bitstring    1 *              Reserved for future IBM use
0058   88 Signed       4 DRBRECDS       How many records are in the file
005C   92 Signed       4 DRBRECNO       Record number desired
0060   96 Signed       4 *              Reserved for future IBM use
0064  100 Signed       4 DRBBUFAL       ALET of addr space of DRBBUFAD
0068  104 Address      4 DRBBUFAD       R-addr of buffer or buffer list.
                                        A buffer list is indicated by the
                                        DRBNDRCT flag being on. A buffer
                                        list is a series of pairs of
                                        fullwords, where each pair
                                        contains the ad-len (address and
                                        length) of a section of the
                                        buffer. The sections may be
                                        discontiguous. The length of a
                                        section may be zero.
006C  108 Signed       4 DRBBUFSZ       Size of buffer; for a buffer
                                        list, the sum of all sections.
0070  112 Signed       4 DRBRECSZ       Size of record retrieved
0074  116 Signed       4 DRBLRECL       Largest record in file
0078  120 Address      4 DRBACSBK       A( ACSBK ) if DRBACSBX = 0
007C  124 Signed       2 DRBACSBX       Index into ACSPK
007E  126 Signed       2 DRBRETCD       Rc from service routines
          .... ....      DRBOK          X'0000' ... Request completed OK
     Access request errors
          .... .1..      DRBCHBIG       X'0004' ... CPCACHE FILES big
                                        LRECL
          .... 1...      DRBCHOTH       X'0008' ... CPCACHE FILES other
                                        error
          .... 11..      DRBOFFLN       X'000C' ... RDEV is OFFLINE
          ...1 ....      DRBBDDEV       X'0010' ... Unacceptable device
                                        type
          ...1 .1..      DRBBDACC       X'0014' ... Unacceptable filemode
                                        number
          ...1 1...      DRBACC2        X'0018' ... Competing ACCESS
                                        request
          ...1 11..      DRBRELRQ       X'001C' ... Release required
                                        first
          ..1. ....      DRBNTEDF       X'0020' ... Mdisk not CMS EDF
                                        format
          ..1. .1..      DRBBDLNK       X'0024' ... LINK processing
                                        failed
     Open request errors
          ..11 ....      DRBOPN         X'0030' ... File was already open
          ..11 .1..      DRBNTACC       X'0034' ... Filemode number not
                                        accessed
          ..11 1...      DRBNTFND       X'0038' ... File was not found
          ..11 11..      DRBBDRCF       X'003C' ... Unacceptable RECFM
          .1.. ....      DRBINCLP       X'0040' ... Imbed would cause a
                                        loop
          .1.. .1..      DRBNOMEM       X'0044' ... Member not found
          .1.. 1...      DRBBXBK        X'0048' ... BX ^= 0 & BK ^= 0
          .1.. 11..      DRBBITS        X'004C' ... Invalid combination
                                        of flags
     Get request errors
          .1.1 ....      DRBSMBFS       X'0050' ... DRBBUFSZ <
                                        DRBRECSZ . Small buffer size is
                                        only . a problem when trying to .
                                        read a PDS directry.
          .1.1 .1..      DRBNTOPN       X'0054' ... File was not open
          .1.1 1...      DRBEOF         X'0058' ... E-O-F (DRBRECNO >
                                        FSBRECDS) . E-O-F (DRBRECNO >
                                        DRBRECDS) . E-O-F (buffer
                                        contains member separator)
          .1.1 11..      DRBBDRCN       X'005C' ... Unacceptable DRBRECNO
          .11. ....      DRBBDBFA       X'0060' ... Unacceptable DRBBUFAD
          .11. .1..      DRBBDBFS       X'0064' ... Unacceptable DRBBUFSZ
          .11. 1...      DRBBDEXT       X'0068' ... Outside minidisk
                                        extents
          .11. 11..      DRBBDINT       X'006C' ... Bad internal format
                                        in file
     Put request errors
          .111 1...      DRBPUSPR       X'0078' ... Attempt to PUT a
                                        sparse rec
          1... ....      DRBBDRCS       X'0080' ... DRBRECSZ not eq
                                        record size
     Close request errors
          1... .1..      DRBPSOPN       X'0084' ... Pseudo-open still in
                                        effect
     Release request errors
          1... 11..      DRBREL2        X'008C' ... Competing RELEASE
                                        request
          1..1 ....      DRBBDDET       X'0090' ... Error detaching VDEV
     CPCACHE request errors
          1..1 .1..      DRBCACHD       X'0094' ... File was already
                                        cached
     State (or State Next) request errors
          1..1 1...      DRBNMORE       X'0098' ... No more files on disk
          1..1 11..      DRBBDSTA       X'009C' ... Invalid STATE resume
                                        point
     PDS processing errors
          1.1. ....      DRBNTLIB       X'00A0' ... Filetype not *LIB
          1.1. .1..      DRBNTPDS       X'00A4' ... Invalid PDS internal
                                        id
          1.1. 1...      DRBBDPDS       X'00A8' ... Invalid PDS internal
                                        format
     General errors
          1.11 ....      DRBIOERR       X'00B0' ... I/O error
          1.11 .1..      DRBPGERR       X'00B4' ... Paging error
          1.11 1...      DRBRETMX       X'00B8' Maximum value supported
                                        for DRBRETCD
0080  128 Address      4 DRBSTACK       Push down stack ptr for IMBEDs
0084  132 Address      4 *              Reserved for future IBM use
0088  136 Character    6 DRBDATIM       Date & time (yy mm dd hh mm ss)
008E  142 Signed       2 *              Reserved for future IBM use
0090  144 Dbl-Word     8 * (0)          D-word alignment for DRBSTWRK
0090  144 Bitstring    6 DRBSTWRK (0)   Work area for STATE
0090  144 Address      4 DRBSTFSH       STATE FSHBK pointer
0094  148 Signed       1 *              STATE reserved field
0095  149 Signed       1 DRBSTFSI       STATE FSBK index in page
0096  150 Signed       2 *              Reserved for future IBM use
0098  152 Signed       4 DRBOPENS       Count of times opened
009C  156 Signed       4 DRBCLOSD       Count of times closed
00A0  160 Signed       4 *              Reserved for future IBM use
00A4  164 Signed       4 *              Reserved for future IBM use
00A8  168 Dbl-Word     8 * (0)          End of DRBK
          000000A8       DRBSIZEB       (*-DRBK) Size in bytes
          00000015       DRBSIZED       (*-DRBK+7)/8 Size in d-words
0058   88 Signed       4 DRBSUOPC       Count of pseudo-open requests .
                                        that are not yet closed.
0010   16 Signed       4 DRBUSER0       Reserved for non-IBM use
0014   20 Signed       4 DRBUSER1       Reserved for non-IBM use

 

DRBK Storage Layout

          
*** DRBK - CP Data Request Block
*
*     +-------------------------------------------------------+
*   0 |                       DRBUSRD1                        |
*     +-------------------------------------------------------+
*   8 |                       DRBUSRD2                        |
*     +---------------------------+---------------------------+
*  10 |         DRBUSRF1          |         DRBUSRF2          |
*     +-------------+-------------+------+------+------+------+
*  18 |  DRBUSRH1   |  DRBUSRH2   |:USRX1|:USRX2|:USRX3|:USRX4|
*     +-------------+-------------+------+------+------+------+
*  20 |          DRBFWD           |          DRBOFB           |
*     +---------------------------+---------------------------+
*  28 |                       DRBFIDFN                        |
*     +-------------------------------------------------------+
*  30 |                       DRBFIDFT                        |
*     +-------------------------------------------------------+
*  38 |                       DRBMEMBR                        |
*     +---------------------------+---------------------------+
*  40 |         DRBMEMS           |         DRBMEME           |
*     +---------------------------+---------------------------+
*  48 |///////////////////////////|///////////////////////////|
*     +---------------------------+------+------+------+------+
*  50 |         DRBPOPEN          |:FLAG1|:FLAG2|:RECFM|//////|
*     +---------------------------+------+------+------+------+
*  58 |         DRBRECDS          |         DRBRECNO          |
*     +---------------------------+---------------------------+
*  60 |///////////////////////////|         DRBBUFAL          |
*     +---------------------------+---------------------------+
*  68 |         DRBBUFAD          |         DRBBUFSZ          |
*     +---------------------------+---------------------------+
*  70 |         DRBRECSZ          |         DRBLRECL          |
*     +---------------------------+-------------+-------------+
*  78 |         DRBACSBK          |  DRBACSBX   |  DRBRETCD   |
*     +---------------------------+-------------+-------------+
*  80 |         DRBSTACK          |///////////////////////////|
*     +---------------------------+-------------+-------------+
*  88 |                DRBDATIM                 |/////////////|
*     +---------------------------+------+------+-------------+
*  90 |         DRBSTFSH          |//////|:STFSI|/////////////|
*     +---------------------------+------+------+-------------+
*  98 |         DRBOPENS          |         DRBCLOSD          |
*     +---------------------------+---------------------------+
*  A0 |///////////////////////////|///////////////////////////|
*     +---------------------------+---------------------------+
*  A8
*
*** DRBK - CP Data Request Block
          
*** Overlay for DRBRECDS in DRBK
*
*     +---------------------------+
*  58 |         DRBSUOPC          | 5C
*     +---------------------------+
*
*** Overlay for DRBRECDS in DRBK
          
*** Overlay for DRBUSRF1 in DRBK
*
*     +---------------------------+---------------------------+
*  10 |         DRBUSER0          |         DRBUSER1          |
*     +---------------------------+---------------------------+
*  18
*
*** Overlay for DRBUSRF1 in DRBK

 

DRBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
DRBACC2        007E 18
DRBACSBK       0078
DRBACSBX       007C
DRBBDACC       007E 14
DRBBDBFA       007E 60
DRBBDBFS       007E 64
DRBBDDET       007E 90
DRBBDDEV       007E 10
DRBBDEXT       007E 68
DRBBDINT       007E 6C
DRBBDLNK       007E 24
DRBBDPDS       007E A8
DRBBDRCF       007E 3C
DRBBDRCN       007E 5C
DRBBDRCS       007E 80
DRBBDSTA       007E 9C
DRBBITS        007E 4C
DRBBUFAD       0068
DRBBUFAL       0064
DRBBUFFR       0055 40
DRBBUFSZ       006C
DRBBXBK        007E 48
DRBCACHD       007E 94
DRBCACHE       0055 08
DRBCHBIG       007E 04
DRBCHOTH       007E 08
DRBCLOSD       009C
DRBCNTRY       0055 04
DRBDATIM       0088
DRBEOF         007E 58
DRBFID         0028
DRBFIDFN       0028
DRBFIDFT       0030
DRBFLAG1       0054
DRBFLAG2       0055
DRBFWD         0020
DRBINCLP       007E 40
DRBIOERR       007E B0
DRBLRECL       0074
DRBMEMBR       0038
DRBMEME        0044
DRBMEMS        0040
DRBNDFER       0054 08
DRBNDRCT       0054 80
DRBNMORE       007E 98
DRBNOMEM       007E 44
DRBNOUPD       0055 10
DRBNTACC       007E 34
DRBNTEDF       007E 20
DRBNTFND       007E 38
DRBNTLIB       007E A0
DRBNTOPN       007E 54
DRBNTPDS       007E A4
DRBOFB         0024
DRBOFFLN       007E 0C
DRBOK          007E 00
DRBOPENS       0098
DRBOPN         007E 30
DRBOUTPT       0055 80
DRBPGERR       007E B4
DRBPHYSR       0054 04
DRBPHYSW       0054 02
DRBPOPEN       0050
DRBPSOPN       007E 84
DRBPUSPR       007E 78
DRBRECDS       0058
DRBRECFM       0056
DRBRECNO       005C
DRBRECSZ       0070
DRBRELRQ       007E 1C
DRBREL2        007E 8C
DRBRETCD       007E
DRBRETMX       007E B8
DRBSEUDO       0054 01
DRBSIZEB       00A8 000000A8
DRBSIZED       00A8 00000015
DRBSMBFS       007E 50
DRBSPARS       0055 20
DRBSTACK       0080
DRBSTFSH       0090
DRBSTFSI       0095
DRBSTWRK       0090
DRBSUOPC       0058
DRBUNIQE       0054 10
DRBUSER0       0010
DRBUSER1       0014
DRBUSRD1       0000
DRBUSRD2       0008
DRBUSRF1       0010
DRBUSRF2       0014
DRBUSRH1       0018
DRBUSRH2       001A
DRBUSRX1       001C
DRBUSRX2       001D
DRBUSRX3       001E
DRBUSRX4       001F

This information is based on z/VM V4R1.0.
Last updated on 5 Jun 2001 at 13:24:51 EDT.
Copyright IBM Corporation, 1990, 2001