LWKBK | Back to Index page

| Prolog Control Block Contents LWKBK DSECT LWKCCWPG DSECT Storage Layout Cross Reference (Contains links to field and bit definitions) |
Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

LWKBK Prolog | Top of page

     NAME       : HCPLWKBK
     DESCRIPTION: ISFC Link Work management structure
     DSECT      : LWKBK
     FUNCTION   :
                  This block is used to manage a unit of work for
                  an ISFC link.
     LOCATED BY :
                  A given LWKBK belongs to a specific link work queue
                  at any point in time.
     CREATED BY :
                  ISFC Link Management.
     DELETED BY :
                  ISFC Link Management.
     SERIALIZED :
                  Each LWKBK instance is owned by a single task.
                  The serialization that protects the associated
                  link or device also protects this LWKBK.
     RELOCATION CONSIDERATIONS : None
     NOTES      :
                  The LWKBK logically contains several distinct
                  areas associated with a link data transfer.

LWKBK Control Block Content | Top of page

     LWKBK DSECT
    Top of page

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      LWKBK          ISFC Link Work management structure
          LWKFPNT and LWKBPNT implement a double-linked,
          circular chain with the following anchors:
           - LNKWRK_PENDING used in HCPKCLCU.
           - LNKTX_PENDING used in HCPKCWDS, HCPKCWDC, and HCPKCWSD.
           - LNKRX_QUEUE used in HCPKCW's LNKRX_INSERT and
             LNKRX_REMOVE subroutines.
          LWKFPNT implements a single-linked chain with the
          following anchor:
           - KCMLWKBK used in HCPKCL's PUT_AVAIL and GET_AVAIL
             subroutines.
    0000    0 Address      4 LWKFPNT        Pointer to next LWKBK area
    0004    4 Address      4 LWKBPNT        Pointer to prev LWKBK area
    0008    8 Bitstring    1 LWKTYPE        Type of work page
              00000001       LWK_WRITE      1 LWK_WRITE - Write Task
              00000002       LWK_READ       2 LWK_READ - Read Task
    0009    9 Bitstring    1 LWKSTAT        Status of this work element
              00000000       LWK_EMPTY      0 LWK_EMPTY - Empty (unused)
              00000001       LWK_OPEN       1 LWK_OPEN - Open for new data
              00000002       LWK_READY      2 LWK_READY - Ready for
                                            processing
              00000003       LWK_ACTIVE     3 LWK_ACTIVE - I/O Active on
                                            LWK_LDVBK
              00000004       LWK_WAIT       4 LWK_WAIT - Waiting for data
                                            exchange
              00000005       LWK_POST       5 LWK_POST - Post processing
                                            after I/O
    000A   10 Bitstring    1 LWKMODE        Data Transfer Mode
              00000001       LWK_SYNC       1 LWK_SYNC - Synchronous mode
              00000002       LWK_ASYNC      2 LWK_ASYNC - Asynchronous mode
              00000003       LWK_IMBED      3 LWK_IMBED - Imbedded
                                            (Synchronous) mode
    000B   11 Bitstring    1 LWKTX_FLAG     Send Processing flags
              1... ....      LWKTX_RESEND   X'80' LWKTX_RESEND Resend LWKBK
                                            following error
    000C   12 Bitstring    1 LWKRX_FLAG     Receive Processing flags
              1... ....      LWKRX_STGREQ   X'80' LWKRX_STGREQ Storage
                                            request in progress
    000D   13 Bitstring    1 LWKSTGMS       Storage Management status
    000E   14 Signed       2 LWKSEQNO       TX Sequence Number
    0010   16 Address      4 LWKLNKBK       Pointer to Link structure
    0014   20 Address      4 LWKLDVBK       Pointer to Device structure
    0018   24 Address      8 LWK_CTLPAGE    Pointer (HA) to CTL page
    0020   32 Address      8 LWK_CTLNXT     Pointer to Next CTL slot
    0028   40 Address      8 LWK_CTLSTOP    Pointer to End of CTL page
    0030   48 Address      4 LWK_CCWPAGE    Pointer (HL) to CCW page
    0034   52 Bitstring    1 LWK_CCWFLAG    CCW Processing flags
              1... ....      LWK_CCWOPEN    X'80' LWK_CCWOPEN
                                            LWK_CCWNXT->CCW is open
              .1.. ....      LWK_CCW4KFRM   X'40' LWK_CCW4KFRM Last fragment
                                            was 4KB
    0035   53 Bitstring    1 LWK_PRIORITY   Priority (0=Low; 7=High)
    0036   54 Signed       2 LWK_CCWCNT     CCWs used for client data
    0038   56 Address      4 LWK_CCWNXT     Pointer to Next CCW slot
    003C   60 Address      4 LWK_CCWSTOP    Pointer to End of CCW area
    0040   64 Address      4 LWK_IDANXT     Pointer to Next IDAW slot
    0044   68 Address      4 LWK_IDASTOP    Pointer to End of IDAW area
    0048   72 Dbl-Word     8 LWK_CCW1       CCW(1) may be Write (TXCTL)
    0050   80 Dbl-Word     8 LWK_CCW2       CCW(2) may be Read (RXCTL)
    0058   88 Dbl-Word     8 LWK_CCW3       CCW(3) may be NOP
    0060   96 Bitstring   16 LWK_BUFFER     Local buffer for ctl msgs
    0070  112 Dbl-Word     8 LWKTOD         TOD when TX LWKBK is enqueued or
                                            when RX LWKBK is received
    0078  120 Address      8 LWKFRMAD       HA pointer to available frames
    0080  128 Signed       4 LWKBYTES       Number of bytes installed (This
                                            includes CTLMAP plus the sum of
                                            all MBHMSGLN values)
    0084  132 Signed       4 LWKREQUE       Count of times re-queued
    0088  136 Signed       4 LWKREFCT       Reference counter (CS updates)
    008C  140 Signed       4 LWKMBHCT       Number of messages installed The
                                            value of LWK_MAXMBH for DATAMAP
                                            is 64
    0090  144 Address      4 LWKMBHBK (4)   Array of pointers to MBHBK
              00000190       LWKBKLN        *-LWKBK Length of LWKBK in bytes
              00000032       LWKBKSZ        (LWKBKLN+7)/8 Size of LWKBK in
                                            doublewords
          LWKCCWPG - CCW Page (associated with LWKBK)

     LWKCCWPG DSECT
    Top of page

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      LWKCCWPG       ISFC Link Work management structure
    0000    0 Character    8 LWKCCW_TAG     Eye Catcher (CCWPAGE:)
    0008    8 Dbl-Word     8 LWKCCW1        First CCW (Read/Write MAP) The
                                            value of LWK_MAXCCW for DATAMAP
                                            is 250
    0010   16 Dbl-Word     8 LWKCCW (250)   CCW array for raw data frames
    07E0 2016 Dbl-Word     8 LWKEOD         Reserve space for EOD exchange
    07E8 2024 Dbl-Word     8 LWKTIC         Reserve space for TIC
          The value of LWK_MAXIDAW for DATAMAP is 250
    07F0 2032 Address      8 LWKIDAL (250)  IDAW list / MIDAW list
          Set limits for this transmission unit.
              00000040       LWK_MAXMBH     64 Limit number of msgs per unit
              000000FA       LWK_MAXCCW     250 Limit CCWs per unit
              000000FA       LWK_MAXIDAW    250 Limit IDAWs per unit

LWKBK Storage Layout | Top of page

    *** LWKBK - ISFC Link Work management structure
    *
    *     +---------------------------+---------------------------+
    *   0 |         LWKFPNT           |         LWKBPNT           |
    *     +------+------+------+------+------+------+-------------+
    *   8 |:TYPE |:STAT |:MODE |(00B) |(00C) |:STGMS|  LWKSEQNO   |
    *     +------+------+------+------+------+------+-------------+
    *  10 |         LWKLNKBK          |         LWKLDVBK          |
    *     +---------------------------+---------------------------+
    *  18 |                     LWK_CTLPAGE                       |
    *     +-------------------------------------------------------+
    *  20 |                      LWK_CTLNXT                       |
    *     +-------------------------------------------------------+
    *  28 |                     LWK_CTLSTOP                       |
    *     +---------------------------+------+------+-------------+
    *  30 |       LWK_CCWPAGE         |(034) |(035) | LWK_CCWCNT  |
    *     +---------------------------+------+------+-------------+
    *  38 |        LWK_CCWNXT         |       LWK_CCWSTOP         |
    *     +---------------------------+---------------------------+
    *  40 |        LWK_IDANXT         |       LWK_IDASTOP         |
    *     +---------------------------+---------------------------+
    *  48 |                       LWK_CCW1                        |
    *     +-------------------------------------------------------+
    *  50 |                       LWK_CCW2                        |
    *     +-------------------------------------------------------+
    *  58 |                       LWK_CCW3                        |
    *     +-------------------------------------------------------+
    *  60 |                      LWK_BUFFER                       |
    *     |                                                       |
    *     +-------------------------------------------------------+
    *  70 |                        LWKTOD                         |
    *     +-------------------------------------------------------+
    *  78 |                       LWKFRMAD                        |
    *     +---------------------------+---------------------------+
    *  80 |         LWKBYTES          |         LWKREQUE          |
    *     +---------------------------+---------------------------+
    *  88 |         LWKREFCT          |         LWKMBHCT          |
    *     +---------------------------+---------------------------+
    *  90 |                       LWKMBHBK                        |
    *     |                                                       |
    *     +-------------------------------------------------------+
    *  A0
    *
    *** LWKBK - ISFC Link Work management structure

    *** LWKCCWPG - ISFC Link Work management structure
    *
    *     +-------------------------------------------------------+
    *   0 |                      LWKCCW_TAG                       |
    *     +-------------------------------------------------------+
    *   8 |                       LWKCCW1                         |
    *     +-------------------------------------------------------+
    *  10 |                                                       |
    *     =                        LWKCCW                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 7E0 |                        LWKEOD                         |
    *     +-------------------------------------------------------+
    * 7E8 |                        LWKTIC                         |
    *     +-------------------------------------------------------+
    * 7F0 |                                                       |
    *     =                       LWKIDAL                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * FC0
    *
    *** LWKCCWPG - ISFC Link Work management structure

LWKBK Cross Reference | Top of page

    Symbol         Dspl Value
    -------------- ---- -----
    LWK_ACTIVE     0009 00000003
    LWK_ASYNC      000A 00000002
    LWK_BUFFER     0060
    LWK_CCWCNT     0036
    LWK_CCWFLAG    0034
    LWK_CCWNXT     0038
    LWK_CCWOPEN    0034 80
    LWK_CCWPAGE    0030
    LWK_CCWSTOP    003C
    LWK_CCW1       0048
    LWK_CCW2       0050
    LWK_CCW3       0058
    LWK_CCW4KFRM   0034 40
    LWK_CTLNXT     0020
    LWK_CTLPAGE    0018
    LWK_CTLSTOP    0028
    LWK_EMPTY      0009 00000000
    LWK_IDANXT     0040
    LWK_IDASTOP    0044
    LWK_IMBED      000A 00000003
    LWK_MAXCCW     07F0 000000FA
    LWK_MAXIDAW    07F0 000000FA
    LWK_MAXMBH     07F0 00000040
    LWK_OPEN       0009 00000001
    LWK_POST       0009 00000005
    LWK_PRIORITY   0035
    LWK_READ       0008 00000002
    LWK_READY      0009 00000002
    LWK_SYNC       000A 00000001
    LWK_WAIT       0009 00000004
    LWK_WRITE      0008 00000001
    LWKBKLN        0090 00000190
    LWKBKSZ        0090 00000032
    LWKBPNT        0004
    LWKBYTES       0080
    LWKCCW         0010
    LWKCCW_TAG     0000
    LWKCCW1        0008
    LWKEOD         07E0
    LWKFPNT        0000
    LWKFRMAD       0078
    LWKIDAL        07F0
    LWKLDVBK       0014
    LWKLNKBK       0010
    LWKMBHBK       0090
    LWKMBHCT       008C
    LWKMODE        000A
    LWKREFCT       0088
    LWKREQUE       0084
    LWKRX_FLAG     000C
    LWKRX_STGREQ   000C 80
    LWKSEQNO       000E
    LWKSTAT        0009
    LWKSTGMS       000D
    LWKTIC         07E8
    LWKTOD         0070
    LWKTX_FLAG     000B
    LWKTX_RESEND   000B 80
    LWKTYPE        0008

This information is based on z/VM 7.2.0 Last updated on 24 Jun 2020 at 09:29:02 EDT.
Copyright IBM Corporation, 1990, 2020