NIDBK | Back to Index page

| Prolog Control Block Contents NIDBK DSECT NIDVID 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.

NIDBK Prolog | Top of page

     NAME       : HCPNIDBK
     DESCRIPTION: Network Interface Device Block.
     DSECT      : NIDBK
     FUNCTION   :
                  The NIDBK structure represents a Network Interface
                  Device.  One NIDBK exists for each virtual device
                  that is part of a simulated Network Interface Card
                  (NIC).  The NIDBK is an extension of the VDEV for
                  a fully-simulated OSA device (VDEVCLAS=CLASSPEC
                  and VDEVTYPE=TYPOSA).
     LOCATED BY :
                  VDEVNID  = VDEV pointer to the NIDBK for this device.
                  NICNIDHD = NICBK pointer to base device NIDBK for this
                  adapter (NIC).  Every device associated with
                  this adapter is chained from the base NIDBK
                  by NIDFPNT/NIDBPNT links.
                  MPCRDCTL = MPCBK pointer to NIDBK for the READ-CTL
                  device.
                  MPCWRCTL = MPCBK pointer to NIDBK for the WRITE-CTL
                  device.
                  DDVNIDBK = DDVBK pointer to NIDBK for a DATA device.
                  IPNLINK  = IPNBK pointer to NIDBK for the device which
                  owns the IP Address.
                  VQSNIDBK = VQSBK pointer to NIDBK associated with a
                  VSWITCH (real) device.
     CREATED BY :
                  CP DEFINE command processing (module HCPVDB)
     DELETED BY :
                  CP DETACH command processing (module HCPVDB)
     REFERENCES :
                  HCPDVTYP COPY - Specific device types
                  HCPEQUAT COPY - General CP equates
     SERIALIZED :
                  NICBK Lock (NICLKWRD) must be held EXCLUSIVE to create
                  or destroy the NIDBK.
                  Most fields within the NIDBK are serialized by the
                  VDEV Lock (VDEVLOCK) or by I/O protocol.
                  NIDDEVST - Serialized by HCPNDFMP.
     RELOCATION CONSIDERATIONS : None
     COMPATIBILITY AND MIGRATION CONCERNS : None.
     GENERAL NOTES      : -This block exists in the system execution space
                  and may be backed anywhere in storage.
                  -This control block is unknown by hardware.

NIDBK Control Block Content | Top of page

     NIDBK DSECT
    Top of page

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      NIDBK          Network Interface Device Block.
    0000    0 Character    8 NIDDESC        NID Description (e.g. IQDC)
    0008    8 Address      4 NIDVDEV        HL pointer to VDEV
    000C   12 Address      4 NIDNICBK       HL pointer to NICBK
    0010   16 Address      4 NIDFPNT        HL pointer to NEXT NIDBK
    0014   20 Address      4 NIDBPNT        HL pointer to PREV NIDBK
    0018   24 Bitstring    1 NIDTYPE        Network Device Type
    0019   25 Bitstring    1 NIDGWFCN       NIC device function
              00000000       NIDNOFCN       0 NIDNOFCN Unassigned
              00000001       NIDCTLRD       1 NIDCTLRD CTL-0 / CTL-READ
              00000002       NIDCTLWR       2 NIDCTLWR CTL-1 / CTL-WRITE
              00000003       NIDDATA        3 NIDDATA DATA device
    001A   26 Signed       2 NIDGWDEV (0)   NIC device index (0-xxxx)
    001A   26 Bitstring    1 NIDUA0         Unit Address (byte 0)
    001B   27 Bitstring    1 NIDUA          Unit Address
    001C   28 Bitstring    4 NIDSTSWD (0)   Status Word (summary for trace)
    001C   28 Bitstring    1 NIDLATCH       Device Latches
              1... ....      NIDBUSY        X'80' NIDBUSY - Busy with a CCW
              .1.. ....      NIDNTRDY       X'40' NIDNTRDY - Device is
                                            NOTREADY
              ..1. ....      NIDCCW1        X'20' NIDCCW1 - This is
                                            First/Only CCW
              ...1 ....      NIDCCFLG       X'10' NIDCCFLG - Command Chaining
                                            in effect
              .... 1...      NIDNEWUC       X'08' NIDNEWUC - Last CCW caused
                                            UC
              .... .1..      NIDRSEVT       X'04' NIDRSEVT - Resetting-Event
                                            Latch Notes : NIDGWSTS is
                                            serialized by NIDSPNLK.
    001D   29 Bitstring    1 NIDGWSTS       Gateway Status
              1... ....      NIDMSPND       X'80' NIDMSPND - Message pending
                                            from GW
              .1.. ....      NIDRDPND       X'40' NIDRDPND - Read pending
                                            from VM
              ..1. ....      NIDRDACT       X'20' NIDRDACT - Read active from
                                            VM
              ...1 ....      NIDWRACT       X'10' NIDWRACT - Write active
                                            from VM
              .... 1...      NIDXDACT       X'08' NIDXDACT - QDIO exchange is
                                            active Notes : NIDCNTRL is
                                            serialized by NIDSPNLK.
    001E   30 Bitstring    1 NIDCNTRL       Control options
              1... ....      NIDSUSPD       X'80' NIDSUSPD - Device is
                                            SUSPENDED
              .1.. ....      NIDSCHED       X'40' NIDSCHED - RESUME is
                                            Scheduled
              ..1. ....      NIDUIPND       X'20' NIDUIPND - Unsolicited Int
                                            Pending
              ...1 ....      NIDRESET       X'10' NIDRESET - Reset in
                                            Progress
              .... 1...      NIDDET         X'08' NIDDET - DETACH in Progress
    001F   31 Bitstring    1 NIDUISTS       Pending Unsolicited Status
    0020   32 Bitstring    1 NIDCMD         Current CCW opcode
    0021   33 Bitstring    1 NIDDVPST       Posted Unit Status
    0022   34 Bitstring    1 NIDDVSTS       Latest Unit Status
    0023   35 Bitstring    1 NIDTRFLG       Extended Trace Flags
              1... ....      NIDTRCCW       X'80' NIDTRCCW - Trace CCW Data
                                            Buffer
              .1.. ....      NIDTRXFR       X'40' NIDTRXFR - Trace Data
                                            Transfers
    0024   36 Bitstring    2 NIDSNS (0)     Sense Data registers
    0024   36 Bitstring    1 NIDSNS0        Sense Byte 0 latches
              1... ....      NIDCMREJ       X'80' NIDCMREJ - Command Reject
              .1.. ....      NIDINTRQ       X'40' NIDINTRQ - Intervention
                                            Reqd
              ..1. ....      NIDBUSCK       X'20' NIDBUSCK - Bus-Out Check
              ...1 ....      NIDEQCHK       X'10' NIDEQCHK - Equipment Check
              .... 1...      NIDCDC         X'08' NIDCDC - Channel Data Check
              .... .1..      NIDCCC         X'04' NIDCCC - Channel Control
                                            Check
              .... ..1.      NIDIFCC        X'02' NIDIFCC - Interface Control
                                            Check
              .... ...1      NIDCANCL       X'01' NIDCANCL - Cancel Function
    0025   37 Bitstring    1 NIDSNS1        Sense Byte 1 latches
              1... ....      NIDRJRES       X'80' NIDRJRES - Rejected by
                                            Resetting-Event
    0026   38 Bitstring    1 NIDPVCMD       Previous CCW opcode
    0027   39 Bitstring    1 NIDPVSTS       Previous CCW status
    0028   40 Bitstring    1 NIDTRANP       LAN Transport mode
              00000001       NIDIP          1 NIDIP - IP Transport (Layer 3)
              00000002       NIDETHER       2 NIDETHER - Ethernet Transport
                                            (Layer 2)
    0029   41 Bitstring    1 NIDLANST       LAN status flags
              1... ....      NIDREADY       X'80' NIDREADY - LAN Connection
                                            is READY
              .1.. ....      NIDBCRCV       X'40' NIDBCRCV - Inbound
                                            Broadcast enabled
              ..1. ....      NIDBCLPB       X'20' NIDBCLPB - Broadcast
                                            Loopback enabled
              .... 1...      NIDMGNT        X'08' NIDMGNT - VSwitch
                                            Management Port
              .... .1..      NIDVSWCN       X'04' NIDVSWCN - This is a
                                            PHYSICAL UPLINK Port
              .... ..1.      NIDNICPT       X'02' NIDNICPT - This is a NIC
                                            UPLINK Port
              .... ...1      NIDD2A8        X'01' NIDD2A8 - Diagnose x2A8
                                            Managed Device
              .... .11.      NIDUPLNK       NIDVSWCN+NIDNICPT NIDUPLNK -
                                            VSWITCH UPLINK Port
    002A   42 Bitstring    1 NIDLLFLG       Link Layer flags
              1... ....      NIDLLVSW       X'80' NIDLLVSW - This is a Link
                                            Layer VSWITCH
              .1.. ....      NIDLLTKO       X'40' NIDLLTKO - This is a
                                            Take-Over Pseudo NIDBK
    002B   43 Bitstring    1 NIDIPFLG       IP Layer flags
              1... ....      NIDPASS_ENABLED
                                            X'80' NIDPASS_ENABLED - Passthru
                                            support is enable
    002C   44 Signed       4 NIDRFCTR       Outstanding Reference Counter
          Active VLAN list for this device (NIDVLANS->NIDVID array).
            VLAN 0 is active for every device, so VLAN 0
            does NOT appear in this list.  This list includes
            an entry for each active VLAN group (except 0).
    0030   48 Address      4 NIDVLANS       Pointer to NIDVID array
          Active MAC list for this device (NIDLLTBL->LLNBK chain).
            This list includes an entry for each active MAC
            address.  This includes unicast, multicast, and
            broadcast MAC addresses, sorted by MAC address.
    0034   52 Address      4 NIDLLTBL       Pointer to Link Layer table
          Active IP Address Table (unicast) for this device.
            IP Table entries (IPNBK) are sorted by IP Address.
            IPv4 addresses are right-justified in 16-byte IPNADDR.
    0038   56 Address      4 NIDIPTBL       Pointer to IPNBK list
    003C   60 Signed       2 NIDIPCTR       Number of IP Address entries
    003E   62 Signed       2 NIDLLCTR       Count of Link Layer entries
          Active Multicast Address Table for this device.
            IP Table entries (IPNBK) are sorted by IP Address.
            IPv4 addresses are right-justified in 16-byte IPNADDR.
    0040   64 Address      4 NIDMCTBL       Pointer to IPNBK list
    0044   68 Signed       2 NIDMCCTR       Number of IP Address entries
    0046   70 Signed       2 NIDVMCTR       Count of Link Layer VMAC entries
          Router entries registered for this device.
            NIDRXTBL is the anchor for a circular list of
            router entries (IPNBK) chained by IPNFPNT/IPNBPNT.
            Each IPNBK represents an eligible router for
            a specific VLAN, IP version, and type (Primary,
            Secondary, or Multicast router).
    0048   72 Address      4 NIDRXTBL       Pointer to IPNBK(Router) list
    004C   76 Signed       2 NIDRXCTR       Count of Router entries
    004E   78 Signed       2 NIDSEQ         DIAG2A8 Sequence Counter
          Multi-VSwitch LAG
          - Pointers to Take-Over NIDBKs for the network connection
          - Anchored by VQSTKNHD
    0050   80 Address      4 NIDTKNXT       HL Pointer to next TakeOver NID
    0054   84 Address      4 NIDTKPRV       HL Pointer to prev TakeOver NID
          The NID Spin Lock (NIDSPNLK) serializes the
          following fields:
            NIDGWSTS - Gateway status flag
            NIDCNTRL - Device control flag
            NIDCPEBK - Pointer to the SUSPEND CPEBK
            NIDPNDFN - Function being suspended (see NIDGWFCN)
            NIDNDMCT - Count of pending messages
            NIDNDMHD - Pointer to the first message (NDMBK)
            NIDNDMTL - Pointer to the last message (NDMBK)
          The NIDSPIN Macro found in this COPY File should be used
          to acquire and release the NID Spin Lock.
    0058   88 Signed       4 *              Reserved for Future IBM Use
    005C   92 Address      4 NIDCPEBK       HL pointer to SUSPEND CPEBK
    0060   96 Address      4 *              Reserved for Future IBM Use
          Two Flags for Promiscuous Mode: NIDPRMFG records the
          settings from the adapter or the user (via SET NIC) or the
          ADMIN (via TRSOURCE ENABLE).  NIDPRMAC is used to provide
          a check point in case the real hardware implements Prom.
          Mode.  If NIDPRMFG is 80 and the NICBK is authorized
          NICCFLG is 02, then NIDPRMAC is 80.  When the NICBK is
          offline the NIDPRMAC field will be 00.
    0064  100 Bitstring    1 NIDPRMFG       Promiscuous Mode Flag
              .... ....      NIDPRMOF       X'00' NIDPRMOF Promiscuous Mode
                                            is inactive
              1... ....      NIDPRMON       X'80' NIDPRMON Promiscuous Mode
                                            is active
              .1.. ....      NIDTRACE       X'40' NIDTRACE Promiscuous Mode
                                            Trace is active
    0065  101 Bitstring    1 NIDPRMAC       Promiscuous Active Flag
              1... ....      NIDPRMAD       X'80' NIDPRMAD Promiscuous Mode
                                            on Adapter
              ..1. ....      NIDPRMER       X'20' NIDPRMER Promiscuous Mode
                                            Error
    0066  102 Signed       2 *              Reserved for Future IBM Use
    0068  104 Dbl-Word     8 *              Reserved for Future IBM Use
    0070  112 Address      4 NIDMPCBK       HL pointer to assigned MPC block
    0074  116 Address      4 NIDVQSBK       HL pointer to VSWITCH VQSBK
          VLAN Support Fields
          NIDFLAG1 is used for the general VLAN cases (when no
          global VLAN ID is set) and for layer 2 VLAN support.  When
          a global VLAN ID is set, the NIDVLAN_GBLID flag will be on
          and the logic should defer to NIDFLAG4 and NIDFlAG6 for
          specifics.
          NIDFLAG4 is used for IPv4 global VLAN traffic and
                   conflicts.
          NIDFLAG6 is used for IPv6 global VLAN traffic and
                   conflicts.
    0078  120 Bitstring    1 NIDFLAG1       VLAN support flag
              1... ....      NIDVLAN_ENABLED
                                            X'80' NIDVLAN_ENABLED VLAN
                                            support is enabled EQU X'40'
                                            Reserved EQU X'20' Reserved EQU
                                            X'10' Reserved
              .... 1...      NIDVLAN_FILTER X'08' NIDVLAN_FILTER VLAN Filter
                                            by VID set EQU X'04' Reserved EQU
                                            X'02' Reserved EQU X'01' Reserved
    0079  121 Bitstring    1 NIDFLAG4       VLAN support flag for IPv4 EQU
                                            X'80' Reserved
              .1.. ....      NIDVLAN_GBLPRT X'40' NIDVLAN_GBLPRT VLAN Global
                                            Priority NIDGVPRT
              ..1. ....      NIDVLAN_GBLID  X'20' NIDVLAN_GBLID VLAN Global
                                            ID in NIDGVID(4 or
              ...1 ....      NIDVLAN_CONFLICT
                                            X'10' NIDVLAN_CONFLICT VLAN
                                            Conflict detected EQU X'08'
                                            Reserved
              .... .1..      NIDVLAN_FORCED X'04' NIDVLAN_FORCED VLAN Forced
                                            by System EQU X'02' Reserved
              .... ...1      NIDVLAN_GBLCONFL
                                            X'01' NIDVLAN_GBLCONFL VLAN
                                            Conflict with Global V
    007A  122 Bitstring    1 NIDFLAG6       VLAN support flag for IPv6
              .1.. ....      NIDVLAN_GBLPRT X'40' NIDVLAN_GBLPRT VLAN Global
                                            Priority NIDGVPRT
              ..1. ....      NIDVLAN_GBLID  X'20' NIDVLAN_GBLID VLAN Global
                                            ID in NIDGVID(4 or
              ...1 ....      NIDVLAN_CONFLICT
                                            X'10' NIDVLAN_CONFLICT VLAN
                                            Conflict detected EQU X'08'
                                            Reserved
              .... .1..      NIDVLAN_FORCED X'04' NIDVLAN_FORCED VLAN Forced
                                            by System EQU X'02' Reserved
              .... ...1      NIDVLAN_GBLCONFL
                                            X'01' NIDVLAN_GBLCONFL VLAN
                                            Conflict with Global V
    007B  123 Bitstring    1 NIDRTFLG       Router Flags
              1... ....      NIDRTPRM       X'80' NIDRTPRM - Primary Router
              .1.. ....      NIDRTSEC       X'40' NIDRTSEC - Secondary Router
              ..1. ....      NIDRTMCR       X'20' NIDRTMCR - Multicast Router
    007C  124 Bitstring    4 *              Reserved
          Current IEEE VLAN Priority
            When NIDVLAN_GBLPRT==1 it means NIDGVPRT has been set
            by the device owner (Global Priority).  NIDGVPRT is
            merged into NIDGVTAG.
    0080  128 Signed       2 NIDGVPRT       Global VLAN Priority
    0082  130 Signed       2 NIDGVPRT6      Global VLAN Priority
          Current IEEE VLAN ID
            When NIDVLAN_GBLID==1 it means NIDGVID has been
            set by the device owner (Global VLAN ID).  When
            NIDVLAN_FORCED==1 it means NIDGVID has been set
            by the system (which may override the owner).
            NIDGVID is merged into NIDGVTAG.
    0084  132 Signed       2 NIDGVID        Global VLAN ID IPv4
              00000000       NIDVLAN_NULL   0 NIDVLAN_NULL - VLAN 0 (NULL tag
                                            / untagged)
              00000FFE       NIDVLAN_LAST   4094 NIDVLAN_LAST - Last valid
                                            VLAN
    0086  134 Signed       2 NIDGVID6       Global VLAN ID IPv6
              00000000       NIDVLAN_NULL   0 NIDVLAN_NULL - VLAN 0 (NULL tag
                                            / untagged)
              00000FFE       NIDVLAN_LAST   4094 NIDVLAN_LAST - Last valid
                                            VLAN
          If NIDVLAN_GBLID==1 Set NIDGVTAG on every outbound frame.
    0088  136 Signed       2 NIDGVTAG       Effective VLAN tag IPv4
              NIDGVTAG       NIDPRMSK       X'E000' NIDPRMSK VLAN Priority
                                            Mask
              NIDGVTAG       NIDIDMSK       X'0FFF' NIDIDMSK VLAN ID Mask
    008A  138 Signed       2 NIDGVTAG6      Effective VLAN tag IPv6
              IDGVTAG6       NIDPRMSK       X'E000' NIDPRMSK VLAN Priority
                                            Mask
              IDGVTAG6       NIDIDMSK       X'0FFF' NIDIDMSK VLAN ID Mask
    008C  140 Bitstring    4 *              reserved
          NIDDVACT contains the TOD value for the most recent:
          (a) SIGA instruction executed by the virtual host, or
          (b) Successful installation of data into the virtual
              input queue for this session.
    0090  144 Dbl-Word     8 NIDDVACT       Active Device Timestamp (TOD)
    0098  152 Address      4 NIDSESBK       Pointer to the SESBK
    009C  156 Address      4 NIDPFPNT       Front Ptr for list of Prom NIDBK
    00A0  160 Bitstring   24 *              Reserved for Future IBM Use
          Additional VLAN Attributes
    00B8  184 Signed       4 NIDVLCTR       NIDVID entry counter
    00BC  188 Signed       2 NIDPVID        Port VLAN ID
          Additional Device Status Flags.
          Serialization Notes on NIDDEVST:
            Bits that are being set in NIDDEVST *must* be serialized
            by acquiring the MAC Protect Lock (HCPNDFMP).
          Serialization Notes on NIDTERM:
            TEST and SET Instruction is used to indicate the QDIO
            device connection is being terminated due to a security
            violation.
    00BE  190 Bitstring    1 NIDDEVST       Device Status Flags
              1... ....      NIDMACPR       X'80' NIDMACPR - MAC Protection
                                            is enabled
    00BF  191 Bitstring    1 NIDTERM        Device Termination Pending FLAG
          Pointer to the device counters for transmits and
          receives.  NIDDATA only.
          Serialization for NIDCSTRSP is via NICCTRLK.
    00C0  192 Address      4 NIDCTRSP       Pointer to NID counters
    00C4  196 Signed       4 *              Reserved for Future IBM Use
          NIDLACTS Holds Transmissions per LinkAG Interval
          Notes      : These counters are only used to determine the
                amount of activity for a specific port in order to
                balance a network load across a LinkAG port group.
                Therefore, for performance reasons there is no
                serialization for these counters.
    00C8  200 Dbl-Word     8 NIDLACTS (0)   Load Balance Interval Counters
    00C8  200 Signed       4 NIDLAPRE       Previous interval Datagrams
    00CC  204 Signed       4 NIDLACUR       Current interval datagrams
    00D0  208 Signed       2 NIDDVNUM       Device number of OSA
    00D2  210 Bitstring    6 NIDDCMAC       Current device MAC address
          NIDRDTOD contains the TOD value for the most recent
          stacked call to the input queue reader (HCPIQRRD).
    00D8  216 Dbl-Word     8 NIDRDTOD       Reader Activated Timestamp (TOD)
    00E0  224 Dbl-Word     8 NIDWRTOD       Outbound Process TimeStamp (TOD)
                                            NIDWRTOD contains the TOD value
                                            for the start of the most recent
                                            processing loop for outbound
                                            datagrams from this device
                                            (HCPVNSDG).
          NDMBK Receiver Handler
          The CP routine to process NDMBKs it receives from a
          virtual switch data transfer.  The appropriate NDMBK
          handler is assigned when a NIDBK is created.
    00E8  232 Address      4 NIDRECV        Incoming Datagram Handler
    00EC  236 Bitstring    1 NIDCLASS       Port Class
              00000000       NIDGUEST       0 NIDGUEST Guest Port (real or
                                            simulated)
              00000004       NIDPHYUP       4 NIDPHYUP Physical UPLINK Port
              00000008       NIDBRIDG       8 NIDBRIDG HiperSockets Bridge
                                            Port
              0000000C       NIDIVLPT       12 NIDIVLPT IVL NIC Port
              00000010       NIDTKOVR       16 NIDTKOVR Multi-VSwitch
                                            Take-Over Port
          Adapter pCHID            (Physical Channel ID Slot in CEC)
          The two byte Adapter pCHID (NIDPCHID) is only valid when
          NIDPCVLD is on.  When the pCHID is valid, it can be used
          as CEC wide unique ID to identify this adapter.
    00ED  237 Bitstring    3 NIDPCWRD (0)   Adapter pCHID
    00ED  237 Bitstring    1 NIDPCFLG       pCHID Validity
              1... ....      NIDPCVLD       X'80' NIDPCVLD pCHID is Valid
    00EE  238 Signed       2 NIDPCHID       Adapter pCHID
          Port Type Specific Overlay Area
    00F0  240 Dbl-Word     8 * (0)          Insure DW Alignment of Overlay
    00F0  240 Bitstring   32 NIDSPEC        NIDBK device redefinition area
          Adapter Port Number      (Physical Port Number of Adapter)
          The one byte OSA Port Number specified by the customer to
          used when establishing a network connection.
    0110  272 Bitstring    1 NIDRPNUM       Adapter's Port Number
    0111  273 Bitstring    3 *              Reserved for Future IBM Use
          Target IP/MAC Address Persistent Cache
          Save the Most Recent Outbound IP/MAC Address
    0114  276 Signed       4 NIDDXVER       Destination Cache Index Version
    0118  280 Bitstring   40 NIDCACHE (0)   Cached destination information
    0118  280 Bitstring   16 NIDIPADD       Save outbound IP Address
    0128  296 Bitstring    8 NIDDEST (0)    Save outbound Link ID
    0128  296 Bitstring    2 NIDDVID        Outbound VLAN ID
    012A  298 Bitstring    6 NIDDVMAC       Outbound MAC Address
    0130  304 Signed       4 *              Reserved for Future IBM Use
    0134  308 Address      4 NIDDXNID       Destination L:NIDBK pointer
    0138  312 Dbl-Word     8 NIDDXLLX (0)   *-- Broadcast/Multicast LLXBKs
                                            ----*
    0138  312 Address      4 NIDLLX01       Primary Destination LLXBK
    013C  316 Address      4 NIDLLX02       Secondary Destination LLXBK
                                            *******************************--
                                            --
          NID Transmission Queue Array  (See NIDTRANS Overlay Below)
          The NID Transmission Queue is a four entry array used to
          maintain multiple link lists of L:NDMBKs sent to the
          VSwitch Port represented by this L:NIDBK.  Each entry
          contains the following information:
            1) Tail PTR / Lock      Last or most recent L:NDMBK on
                                      the Queue.   The Tail PTR is
                                      also used for the NID Spin
                                      Transmisssion Lock.
            2) Queue Count          Number of L:NDMBKs on the Queue
            3) Flags                Processing Flags
            4) Head PTR             First or oldest L:NDMBK on Queue
           The four transmission queues are used by the sending
           VSwitch port to determine the sending priority of the
           L:NDMBK being sent to this port.  The queue priority
           determines the order L:NDMBKs are inserted into the
           Input QDIO Queue of a simulated port or the Output QDIO
           Queue for an Uplink Port.  The sending port determines
           the queue and transmission priority as defined below:
             QUEUE 0    Highest Priority used for all CP initiated
                          packet transmissions
             QUEUE 1    HIGH Guest Priority assigned by the system
                          administrator by NICDEF or SET VSwitch.
             QUEUE 2    NORMAL Guest Priority assigned by the system
                          administrator by NICDEF or SET VSwitch or
                          the default assigned priority.
             QUEUE 3    LOW Guest Priority assigned by the system
                          administrator by NICDEF or SET VSwitch.
    0140  320 Dbl-Word     8 * (0)          Insure DW Alignment of Overlay
    0140  320 Bitstring   64 NIDTRANS       NID Transmission Queues
    0180  384 Dbl-Word     8 *              Reserved for future IBM use
          End of NIDBK Structure
              00000188       NID$END        * End of NIDBK
              00000188       NIDBKLN        *-NIDBK Length of NIDBK in bytes
              00000031       NIDBKSZ        (*-NIDBK+7)/8 Size of NIDBK in
                                            doublewords
         ***
         ***     NID Transmission Queue Overlay Definitions
         ***
         ***  Serialized : NID Tranmission Spin Lock
         ***
    0140  320 Dbl-Word     8 NIDXSTRT (0)   Start of NID Trans Q Entry
    0140  320 Dbl-Word     8 NIDNDMPT (0)   Pending Transmision Queue
    0140  320 Address      4 NIDNDMHD       Pointer to first L:NDMBK
    0144  324 Address      4 NIDNDMTL       Pointer to last L:NDMBK
    0148  328 Signed       2 NIDNDMCT       Count of pending messages
              NIDNDMCT       NIDGPLMT       1024 NIDGPLMT Guest Port MSG
                                            Threshold
              NIDNDMCT       NIDUPLMT       4096 NIDUPLMT UPLink Port MSG
                                            Threshold
              NIDNDMCT       NIDBCLMT       NIDUPLMT NIDBCLMT Broadcast Storm
                                            Threshold
    014A  330 Bitstring    1 *              Reserved for Future IBM Use
    014B  331 Bitstring    1 NIDFLAGS       Processing Flags
              1... ....      NIDITASK       X'80' NIDITASK QDIO Inbound
                                            Processing Task is ACTIVE
    014C  332 Address      4 NIDSPNLK       NID Spin Lock
              0000000F       NIDXMASK       B'1111' Valid Index Boundary Mask
              00000010       NIDXSIZE       *-NIDXSTRT Size in Bytes of
                                            Single Entry
              00000004       NIDXENTY       L'NIDTRANS/NIDXSIZE Number of
                                            NIDTRANS Entries
              00000030       NIDXLAST       L'NIDTRANS-NIDXSIZE Last Valid
                                            Index within NID Trans Array
         ***
         ***              End of NID Transmission Array
         ***
         ***
          Multi-VSwitch LAG Take-over Overlay  (NIDCLASS = NIDTKOVR)
          This overlay area is only valid in a L:NIDBK used to track
          a Take-Over MAC.
          - Failing network connection's identification
    00F0  240 Bitstring   14 NID_HOSTTO (0) Take-Over Host
    00F0  240 Bitstring    8 NID_HOSTNAME   Failing Host Name (VSwitch Name)
    00F8  248 Bitstring    6 NID_HOSTMAC    Failing Host Unicast MAC Address
    00FE  254 Bitstring    2 *              Reserved for future IBM use
    0100  256 Dbl-Word     8 * (2)          Reserved for future IBM use
          UpLink Port Overlay                  (NIDCLASS = NIDPHYUP)
          This overlay area is only valid in a L:NIDBK used for a
          Physical UpLink Port on a VSwitch.
    00F0  240 Dbl-Word     8 NID_TOTPFCNT   Total Previous Frame Load BAL
                                            Count for all MVLAG VSwitches
                                            sharing this port in the LAG
    00F8  248 Dbl-Word     8 * (3)          Reserved for future IBM use
         ***
         ***    End of Port Specific Overlay Area Definitions
         ***
          NIDVID - Define the Session VID Array Format
            The NIDVID defines one element in the 4K VLAN Array
            (one entry for each VLAN number 0-4095).  Note that
            VLAN(0) and VLAN(4095) are not valid VLAN groups.

     NIDVID DSECT
    Top of page

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      NIDVID         Network Interface Device Block.
    0000    0 Bitstring    1 NIDVIDX        Status of VID in NIDVID array

NIDBK Storage Layout | Top of page

    *** NIDBK - Network Interface Device Block.
    *
    *     +-------------------------------------------------------+
    *   0 |                       NIDDESC                         |
    *     +---------------------------+---------------------------+
    *   8 |         NIDVDEV           |         NIDNICBK          |
    *     +---------------------------+---------------------------+
    *  10 |         NIDFPNT           |         NIDBPNT           |
    *     +------+------+------+------+------+------+------+------+
    *  18 |:TYPE |:GWFCN|NIDUA0|NIDUA |:LATCH|:GWSTS|:CNTRL|:UISTS|
    *     +------+------+------+------+------+------+------+------+
    *  20 |NIDCMD|:DVPST|:DVSTS|:TRFLG|:SNS0 |:SNS1 |:PVCMD|:PVSTS|
    *     +------+------+------+------+------+------+------+------+
    *  28 |:TRANP|:LANST|:LLFLG|:IPFLG|         NIDRFCTR          |
    *     +------+------+------+------+---------------------------+
    *  30 |         NIDVLANS          |         NIDLLTBL          |
    *     +---------------------------+-------------+-------------+
    *  38 |         NIDIPTBL          |  NIDIPCTR   |  NIDLLCTR   |
    *     +---------------------------+-------------+-------------+
    *  40 |         NIDMCTBL          |  NIDMCCTR   |  NIDVMCTR   |
    *     +---------------------------+-------------+-------------+
    *  48 |         NIDRXTBL          |  NIDRXCTR   |   NIDSEQ    |
    *     +---------------------------+-------------+-------------+
    *  50 |         NIDTKNXT          |         NIDTKPRV          |
    *     +---------------------------+---------------------------+
    *  58 |///////////////////////////|         NIDCPEBK          |
    *     +---------------------------+------+------+-------------+
    *  60 |///////////////////////////|:PRMFG|:PRMAC|/////////////|
    *     +---------------------------+------+------+-------------+
    *  68 |///////////////////////////////////////////////////////|
    *     +---------------------------+---------------------------+
    *  70 |         NIDMPCBK          |         NIDVQSBK          |
    *     +------+------+------+------+---------------------------+
    *  78 |:FLAG1|:FLAG4|:FLAG6|:RTFLG|///////////////////////////|
    *     +------+------+------+------+-------------+-------------+
    *  80 |  NIDGVPRT   | NIDGVPRT6   |  NIDGVID    |  NIDGVID6   |
    *     +-------------+-------------+-------------+-------------+
    *  88 |  NIDGVTAG   | NIDGVTAG6   |///////////////////////////|
    *     +-------------+-------------+---------------------------+
    *  90 |                       NIDDVACT                        |
    *     +---------------------------+---------------------------+
    *  98 |         NIDSESBK          |         NIDPFPNT          |
    *     +---------------------------+---------------------------+
    *  A0 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////////////////////////////////|
    *     +---------------------------+-------------+------+------+
    *  B8 |         NIDVLCTR          |  NIDPVID    |:DEVST|:TERM |
    *     +---------------------------+-------------+------+------+
    *  C0 |         NIDCTRSP          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  C8 |         NIDLAPRE          |         NIDLACUR          |
    *     +-------------+-------------+---------------------------+
    *  D0 |  NIDDVNUM   |                NIDDCMAC                 |
    *     +-------------+-----------------------------------------+
    *  D8 |                       NIDRDTOD                        |
    *     +-------------------------------------------------------+
    *  E0 |                       NIDWRTOD                        |
    *     +---------------------------+------+------+-------------+
    *  E8 |         NIDRECV           |:CLASS|:PCFLG|  NIDPCHID   |
    *     +---------------------------+------+------+-------------+
    *  F0 |                                                       |
    *     =                       NIDSPEC                         =
    *     |                                                       |
    *     +------+--------------------+---------------------------+
    * 110 |:RPNUM|////////////////////|         NIDDXVER          |
    *     +------+--------------------+---------------------------+
    * 118 |                       NIDIPADD                        |
    *     |                                                       |
    *     +-------------+-----------------------------------------+
    * 128 |  NIDDVID    |                NIDDVMAC                 |
    *     +-------------+-------------+---------------------------+
    * 130 |///////////////////////////|         NIDDXNID          |
    *     +---------------------------+---------------------------+
    * 138 |         NIDLLX01          |         NIDLLX02          |
    *     +---------------------------+---------------------------+
    * 140 |                                                       |
    *     =                       NIDTRANS                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 180 |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    * 188
    *
    *** NIDBK - Network Interface Device Block.

    *** Overlay for NIDTRANS in NIDBK
    *
    *     +---------------------------+---------------------------+
    * 140 |         NIDNDMHD          |         NIDNDMTL          |
    *     +-------------+------+------+---------------------------+
    * 148 |  NIDNDMCT   |//////|:FLAGS|         NIDSPNLK          |
    *     +-------------+------+------+---------------------------+
    * 150
    *
    *** Overlay for NIDTRANS in NIDBK

    *** Overlay for NIDSPEC in NIDBK
    *
    *     +-------------------------------------------------------+
    *  F0 |                     NID_HOSTNAME                      |
    *     +-----------------------------------------+-------------+
    *  F8 |              NID_HOSTMAC                |/////////////|
    *     +-----------------------------------------+-------------+
    * 100 |///////////////////////////////////////////////////////|
    *     |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    * 110
    *
    *** Overlay for NIDSPEC in NIDBK

    *** Overlay for NIDSPEC in NIDBK
    *
    *     +-------------------------------------------------------+
    *  F0 |                     NID_TOTPFCNT                      |
    *     +-------------------------------------------------------+
    *  F8 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    * 110
    *
    *** Overlay for NIDSPEC in NIDBK

    *** NIDVID - Network Interface Device Block.
    *
    *     +------+
    *   0 |:VIDX | 1
    *     +------+
    *
    *** NIDVID - Network Interface Device Block.

NIDBK Cross Reference | Top of page

    Symbol         Dspl Value
    -------------- ---- -----
    NID$END        0180 00000188
    NID_HOSTMAC    00F8
    NID_HOSTNAME   00F0
    NID_HOSTTO     00F0
    NID_TOTPFCNT   00F0
    NIDBCLMT       0148 NIDNDMCT
    NIDBCLPB       0029 20
    NIDBCRCV       0029 40
    NIDBKLN        0180 00000188
    NIDBKSZ        0180 00000031
    NIDBPNT        0014
    NIDBRIDG       00EC 00000008
    NIDBUSCK       0024 20
    NIDBUSY        001C 80
    NIDCACHE       0118
    NIDCANCL       0024 01
    NIDCCC         0024 04
    NIDCCFLG       001C 10
    NIDCCW1        001C 20
    NIDCDC         0024 08
    NIDCLASS       00EC
    NIDCMD         0020
    NIDCMREJ       0024 80
    NIDCNTRL       001E
    NIDCPEBK       005C
    NIDCTLRD       0019 00000001
    NIDCTLWR       0019 00000002
    NIDCTRSP       00C0
    NIDDATA        0019 00000003
    NIDDCMAC       00D2
    NIDDESC        0000
    NIDDEST        0128
    NIDDET         001E 08
    NIDDEVST       00BE
    NIDDVACT       0090
    NIDDVID        0128
    NIDDVMAC       012A
    NIDDVNUM       00D0
    NIDDVPST       0021
    NIDDVSTS       0022
    NIDDXLLX       0138
    NIDDXNID       0134
    NIDDXVER       0114
    NIDD2A8        0029 01
    NIDEQCHK       0024 10
    NIDETHER       0028 00000002
    NIDFLAGS       014B
    NIDFLAG1       0078
    NIDFLAG4       0079
    NIDFLAG6       007A
    NIDFPNT        0010
    NIDGPLMT       0148 NIDNDMCT
    NIDGUEST       00EC 00000000
    NIDGVID        0084
    NIDGVID6       0086
    NIDGVPRT       0080
    NIDGVPRT6      0082
    NIDGVTAG       0088
    NIDGVTAG6      008A
    NIDGWDEV       001A
    NIDGWFCN       0019
    NIDGWSTS       001D
    NIDIDMSK       0088 NIDGVTAG
    NIDIDMSK       008A IDGVTAG6
    NIDIFCC        0024 02
    NIDINTRQ       0024 40
    NIDIP          0028 00000001
    NIDIPADD       0118
    NIDIPCTR       003C
    NIDIPFLG       002B
    NIDIPTBL       0038
    NIDITASK       014B 80
    NIDIVLPT       00EC 0000000C
    NIDLACTS       00C8
    NIDLACUR       00CC
    NIDLANST       0029
    NIDLAPRE       00C8
    NIDLATCH       001C
    NIDLLCTR       003E
    NIDLLFLG       002A
    NIDLLTBL       0034
    NIDLLTKO       002A 40
    NIDLLVSW       002A 80
    NIDLLX01       0138
    NIDLLX02       013C
    NIDMACPR       00BE 80
    NIDMCCTR       0044
    NIDMCTBL       0040
    NIDMGNT        0029 08
    NIDMPCBK       0070
    NIDMSPND       001D 80
    NIDNDMCT       0148
    NIDNDMHD       0140
    NIDNDMPT       0140
    NIDNDMTL       0144
    NIDNEWUC       001C 08
    NIDNICBK       000C
    NIDNICPT       0029 02
    NIDNOFCN       0019 00000000
    NIDNTRDY       001C 40
    NIDPASS_ENABLED
                   002B 80
    NIDPCFLG       00ED
    NIDPCHID       00EE
    NIDPCVLD       00ED 80
    NIDPCWRD       00ED
    NIDPFPNT       009C
    NIDPHYUP       00EC 00000004
    NIDPRMAC       0065
    NIDPRMAD       0065 80
    NIDPRMER       0065 20
    NIDPRMFG       0064
    NIDPRMOF       0064 00
    NIDPRMON       0064 80
    NIDPRMSK       0088 NIDGVTAG
    NIDPRMSK       008A IDGVTAG6
    NIDPVCMD       0026
    NIDPVID        00BC
    NIDPVSTS       0027
    NIDRDACT       001D 20
    NIDRDPND       001D 40
    NIDRDTOD       00D8
    NIDREADY       0029 80
    NIDRECV        00E8
    NIDRESET       001E 10
    NIDRFCTR       002C
    NIDRJRES       0025 80
    NIDRPNUM       0110
    NIDRSEVT       001C 04
    NIDRTFLG       007B
    NIDRTMCR       007B 20
    NIDRTPRM       007B 80
    NIDRTSEC       007B 40
    NIDRXCTR       004C
    NIDRXTBL       0048
    NIDSCHED       001E 40
    NIDSEQ         004E
    NIDSESBK       0098
    NIDSNS         0024
    NIDSNS0        0024
    NIDSNS1        0025
    NIDSPEC        00F0
    NIDSPNLK       014C
    NIDSTSWD       001C
    NIDSUSPD       001E 80
    NIDTERM        00BF
    NIDTKNXT       0050
    NIDTKOVR       00EC 00000010
    NIDTKPRV       0054
    NIDTRACE       0064 40
    NIDTRANP       0028
    NIDTRANS       0140
    NIDTRCCW       0023 80
    NIDTRFLG       0023
    NIDTRXFR       0023 40
    NIDTYPE        0018
    NIDUA          001B
    NIDUA0         001A
    NIDUIPND       001E 20
    NIDUISTS       001F
    NIDUPLMT       0148 NIDNDMCT
    NIDUPLNK       0029 06
    NIDVDEV        0008
    NIDVIDX        0000
    NIDVLAN_CONFLICT
                   0079 10
    NIDVLAN_CONFLICT
                   007A 10
    NIDVLAN_ENABLED
                   0078 80
    NIDVLAN_FILTER
                   0078 08
    NIDVLAN_FORCED
                   0079 04
    NIDVLAN_FORCED
                   007A 04
    NIDVLAN_GBLCONFL
                   0079 01
    NIDVLAN_GBLCONFL
                   007A 01
    NIDVLAN_GBLID  0079 20
    NIDVLAN_GBLID  007A 20
    NIDVLAN_GBLPRT
                   0079 40
    NIDVLAN_GBLPRT
                   007A 40
    NIDVLAN_LAST   0084 00000FFE
    NIDVLAN_LAST   0086 00000FFE
    NIDVLAN_NULL   0084 00000000
    NIDVLAN_NULL   0086 00000000
    NIDVLANS       0030
    NIDVLCTR       00B8
    NIDVMCTR       0046
    NIDVQSBK       0074
    NIDVSWCN       0029 04
    NIDWRACT       001D 10
    NIDWRTOD       00E0
    NIDXDACT       001D 08
    NIDXENTY       014C 00000004
    NIDXLAST       014C 00000030
    NIDXMASK       014C 0000000F
    NIDXSIZE       014C 00000010
    NIDXSTRT       0140

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