Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
NIDBK
Control Block Contents
NIDBK DSECT
Cross Reference (Contains links to field and bit definitions)
NIDBK Prolog
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. Exceptions are: NIDSTACK - Updated using CS logic. NOTES : None. General Note : None
NIDBK Control Block Content
NIDBK DSECT
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 Pointer to VDEV 000C 12 Address 4 NIDNICBK Pointer to NICBK 0010 16 Address 4 NIDFPNT Pointer to NEXT NIDBK 0014 20 Address 4 NIDBPNT Pointer to PREV NIDBK 0018 24 Bitstring 1 NIDTYPE Network Device Type 0019 25 Bitstring 1 NIDGWFCN NIC device function 00000000 NIDNOFCN 0 Unassigned 00000001 NIDCTLRD 1 CTL-0 / CTL-READ 00000002 NIDCTLWR 2 CTL-1 / CTL-WRITE 00000003 NIDDATA 3 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' - Busy with a CCW .1.. .... NIDNTRDY X'40' - Device is NOTREADY ..1. .... NIDCCW1 X'20' - This is First/Only CCW ...1 .... NIDCCFLG X'10' - Command Chaining in effect .... 1... NIDNEWUC X'08' - Last CCW caused UC .... .1.. NIDRSEVT X'04' - Resetting-Event Latch Notes : NIDGWSTS is serialized by NIDSPNLK. 001D 29 Bitstring 1 NIDGWSTS Gateway Status 1... .... NIDMSPND X'80' - Message pending from GW .1.. .... NIDRDPND X'40' - Read pending from VM ..1. .... NIDRDACT X'20' - Read active from VM ...1 .... NIDWRACT X'10' - Write active from VM .... 1... NIDXDACT X'08' - QDIO exchange is active Notes : NIDCNTRL is serialized by NIDSPNLK. 001E 30 Bitstring 1 NIDCNTRL Control options 1... .... NIDSUSPD X'80' - Device is SUSPENDED .1.. .... NIDSCHED X'40' - RESUME is Scheduled ..1. .... NIDUIPND X'20' - Unsolicited Int Pending ...1 .... NIDRESET X'10' - Reset in Progress .... 1... NIDDET X'08' - 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' - Trace CCW Data Buffer .1.. .... NIDTRXFR X'40' - 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' - Command Reject .1.. .... NIDINTRQ X'40' - Intervention Reqd ..1. .... NIDBUSCK X'20' - Bus-Out Check ...1 .... NIDEQCHK X'10' - Equipment Check .... 1... NIDCDC X'08' - Channel Data Check .... .1.. NIDCCC X'04' - Channel Control Check .... ..1. NIDIFCC X'02' - Interface Control Check .... ...1 NIDCANCL X'01' - Cancel Function 0025 37 Bitstring 1 NIDSNS1 Sense Byte 1 latches 1... .... NIDRJRES X'80' - Rejected by Resetting-Event 0026 38 Bitstring 1 NIDPVCMD Previous CCW opcode 0027 39 Bitstring 1 NIDPVSTS Previous CCW status 0028 40 Signed 4 NIDRFCTR Outstanding Reference Counter 002C 44 Bitstring 4 * Reserved 0030 48 Address 4 NIDXFRPT Pointer to current buffer 0034 52 Signed 4 NIDXFRLN Bytes to/from VM buffer 0038 56 Address 4 NIDIPTBL Pointer to Device IP Table 003C 60 Signed 2 NIDIPCTR Count of IP Addresses installed 003E 62 Bitstring 2 * Reserved 0040 64 Address 4 NIDBCIPN Pointer to Broadcast IPNBK 0044 68 Address 4 NIDMCIPN Pointer to Multicast IPNBK 0048 72 Address 4 NIDDXIPN Pointer to LAN Connection IPNBK 004C 76 Address 4 NIDPXIPN Pointer to PX IPNBK 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) NIDNDMHD - Pointer to the first message (NDMBK) NIDNDMTL - Pointer to the last message (NDMBK) 0050 80 Signed 4 NIDSPNLK NID Spin Lock 0054 84 Address 4 NIDCPEBK Pointer to SUSPEND CPEBK 0058 88 Address 4 NIDSTACK Pointer to Stacked NDMBK work 005C 92 Bitstring 2 * reserved 005E 94 Signed 2 NIDNDMCT Count of pending messages 0060 96 Address 4 NIDNDMHD Pointer to first NDMBK 0064 100 Address 4 NIDNDMTL Pointer to last NDMBK 0068 104 Address 4 NIDMPCBK Pointer to assigned MPC block 006C 108 Address 4 NIDVQSBK Pointer to VSWITCH VQSBK VLAN support fields 0070 112 Bitstring 1 NIDFLAG1 VLAN support flag 00000080 NIDVLAN_ENABLED X'80' VLAN support is enabled 00000040 NIDVLAN_GBLPRT X'40' VLAN Global Priority in NIDGVPRT 00000020 NIDVLAN_GBLID X'20' VLAN Global ID in NIDGVID 00000010 NIDVLAN_CONFLICT X'10' VLAN Conflict detected 00000008 NIDPASS_ENABLED X'08' PASSTHRU support is enabled 00000004 NIDVLAN_FORCED X'04' VLAN Forced by System 0071 113 Bitstring 1 * Reserved If NIDGVTAG is nonzero, set VLAN TAG on all outbound data. 0072 114 Signed 2 NIDGVPRT Global VLAN Priority 0074 116 Signed 2 NIDGVID Global VLAN ID 0076 118 Signed 2 NIDGVTAG Effective VLAN tag 0000E000 NIDPRMSK X'E000' VLAN Priority Mask 00000FFF NIDIDMSK X'0FFF' VLAN ID Mask VLAN ID array authorized for this user. If NIDVLAN1 is x'0000' it indicates this interface is allowed to use ANY VLAN ID. Otherwise x'0000' marks the end of a list of VLAN ID numbers allowed for this interface device. 0078 120 Bitstring 8 NIDVLANS (0) Array of 4 x VLAN ID entries 0078 120 Signed 2 NIDVLAN1 VLAN ID 1 007A 122 Signed 2 NIDVLAN2 VLAN ID 2 007C 124 Signed 2 NIDVLAN3 VLAN ID 3 007E 126 Signed 2 NIDVLAN4 VLAN ID 4 0080 128 Bitstring 16 * Reserved NIDTXCTS holds TX counters for the current Queue Writer. 0090 144 Dbl-Word 8 NIDTXCTS (0) Transmitted data counters 0090 144 Signed 4 NIDTXUCN TX Unicast NonRouter Bytes 0094 148 Signed 4 NIDTXUCR TX Unicast Router Bytes 0098 152 Signed 4 NIDTXMC TX Multicast Bytes 009C 156 Signed 4 NIDTXBC TX Broadcast Bytes 00A0 160 Signed 4 NIDTXUPK TX Unicast NonRouter Packets 00A4 164 Signed 4 NIDTXRPK TX Unicast Router Packets 00A8 168 Signed 4 NIDTXMPK TX Multicast Packets 00AC 172 Signed 4 NIDTXBPK TX Broadcast Packets 00B0 176 Signed 4 NIDTXERR TX Bad Packets 00B4 180 Signed 4 NIDTXDSC TX Discarded Packets 00000028 NIDTXCLN (*-NIDTXCTS) Length of NIDTXCTS area to clear NIDRXCTS holds RX counters for the current Queue Reader. 00B8 184 Dbl-Word 8 NIDRXCTS (0) Inbound data counters 00B8 184 Signed 4 NIDRXUCN RX Unicast NonRouter Bytes 00BC 188 Signed 4 NIDRXUCR RX Unicast Router Bytes 00C0 192 Signed 4 NIDRXMC RX Multicast Bytes 00C4 196 Signed 4 NIDRXBC RX Broadcast Bytes 00C8 200 Signed 4 NIDRXUPK RX Unicast NonRouter Packets 00CC 204 Signed 4 NIDRXRPK RX Unicast Router Packets 00D0 208 Signed 4 NIDRXMPK RX Multicast Packets 00D4 212 Signed 4 NIDRXBPK RX Broadcast Packets 00D8 216 Signed 4 NIDRXERR RX Bad Packets 00DC 220 Signed 4 NIDRXDSC RX Discarded Packets 00000028 NIDRXCLN (*-NIDRXCTS) Length of NIDRXCTS area to clear End of NIDBK structure. 000000E0 NID$END * End of NIDBK 000000E0 NIDBKLN *-NIDBK Length of NICBK in bytes 0000001C NIDBKSZ (*-NIDBK+7)/8 Size of NICBK in doublewords
NIDBK Storage Layout
*** 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 | NIDRFCTR |///////////////////////////| * +---------------------------+---------------------------+ * 30 | NIDXFRPT | NIDXFRLN | * +---------------------------+-------------+-------------+ * 38 | NIDIPTBL | NIDIPCTR |/////////////| * +---------------------------+-------------+-------------+ * 40 | NIDBCIPN | NIDMCIPN | * +---------------------------+---------------------------+ * 48 | NIDDXIPN | NIDPXIPN | * +---------------------------+---------------------------+ * 50 | NIDSPNLK | NIDCPEBK | * +---------------------------+-------------+-------------+ * 58 | NIDSTACK |/////////////| NIDNDMCT | * +---------------------------+-------------+-------------+ * 60 | NIDNDMHD | NIDNDMTL | * +---------------------------+---------------------------+ * 68 | NIDMPCBK | NIDVQSBK | * +------+------+-------------+-------------+-------------+ * 70 |:FLAG1|//////| NIDGVPRT | NIDGVID | NIDGVTAG | * +------+------+-------------+-------------+-------------+ * 78 | NIDVLAN1 | NIDVLAN2 | NIDVLAN3 | NIDVLAN4 | * +-------------+-------------+-------------+-------------+ * 80 |///////////////////////////////////////////////////////| * |///////////////////////////////////////////////////////| * +---------------------------+---------------------------+ * 90 | NIDTXUCN | NIDTXUCR | * +---------------------------+---------------------------+ * 98 | NIDTXMC | NIDTXBC | * +---------------------------+---------------------------+ * A0 | NIDTXUPK | NIDTXRPK | * +---------------------------+---------------------------+ * A8 | NIDTXMPK | NIDTXBPK | * +---------------------------+---------------------------+ * B0 | NIDTXERR | NIDTXDSC | * +---------------------------+---------------------------+ * B8 | NIDRXUCN | NIDRXUCR | * +---------------------------+---------------------------+ * C0 | NIDRXMC | NIDRXBC | * +---------------------------+---------------------------+ * C8 | NIDRXUPK | NIDRXRPK | * +---------------------------+---------------------------+ * D0 | NIDRXMPK | NIDRXBPK | * +---------------------------+---------------------------+ * D8 | NIDRXERR | NIDRXDSC | * +---------------------------+---------------------------+ * E0 * *** NIDBK - Network Interface Device Block.
NIDBK Cross Reference
Symbol Dspl Value -------------- ---- ----- NID$END 00DC 000000E0 NIDBCIPN 0040 NIDBKLN 00DC 000000E0 NIDBKSZ 00DC 0000001C NIDBPNT 0014 NIDBUSCK 0024 20 NIDBUSY 001C 80 NIDCANCL 0024 01 NIDCCC 0024 04 NIDCCFLG 001C 10 NIDCCW1 001C 20 NIDCDC 0024 08 NIDCMD 0020 NIDCMREJ 0024 80 NIDCNTRL 001E NIDCPEBK 0054 NIDCTLRD 0019 00000001 NIDCTLWR 0019 00000002 NIDDATA 0019 00000003 NIDDESC 0000 NIDDET 001E 08 NIDDVPST 0021 NIDDVSTS 0022 NIDDXIPN 0048 NIDEQCHK 0024 10 NIDFLAG1 0070 NIDFPNT 0010 NIDGVID 0074 NIDGVPRT 0072 NIDGVTAG 0076 NIDGWDEV 001A NIDGWFCN 0019 NIDGWSTS 001D NIDIDMSK 0076 00000FFF NIDIFCC 0024 02 NIDINTRQ 0024 40 NIDIPCTR 003C NIDIPTBL 0038 NIDLATCH 001C NIDMCIPN 0044 NIDMPCBK 0068 NIDMSPND 001D 80 NIDNDMCT 005E NIDNDMHD 0060 NIDNDMTL 0064 NIDNEWUC 001C 08 NIDNICBK 000C NIDNOFCN 0019 00000000 NIDNTRDY 001C 40 NIDPASS_ENABLED 0070 00000008 NIDPRMSK 0076 0000E000 NIDPVCMD 0026 NIDPVSTS 0027 NIDPXIPN 004C NIDRDACT 001D 20 NIDRDPND 001D 40 NIDRESET 001E 10 NIDRFCTR 0028 NIDRJRES 0025 80 NIDRSEVT 001C 04 NIDRXBC 00C4 NIDRXBPK 00D4 NIDRXCLN 00DC 00000028 NIDRXCTS 00B8 NIDRXDSC 00DC NIDRXERR 00D8 NIDRXMC 00C0 NIDRXMPK 00D0 NIDRXRPK 00CC NIDRXUCN 00B8 NIDRXUCR 00BC NIDRXUPK 00C8 NIDSCHED 001E 40 NIDSNS 0024 NIDSNS0 0024 NIDSNS1 0025 NIDSPNLK 0050 NIDSTACK 0058 NIDSTSWD 001C NIDSUSPD 001E 80 NIDTRCCW 0023 80 NIDTRFLG 0023 NIDTRXFR 0023 40 NIDTXBC 009C NIDTXBPK 00AC NIDTXCLN 00B4 00000028 NIDTXCTS 0090 NIDTXDSC 00B4 NIDTXERR 00B0 NIDTXMC 0098 NIDTXMPK 00A8 NIDTXRPK 00A4 NIDTXUCN 0090 NIDTXUCR 0094 NIDTXUPK 00A0 NIDTYPE 0018 NIDUA 001B NIDUA0 001A NIDUIPND 001E 20 NIDUISTS 001F NIDVDEV 0008 NIDVLAN_CONFLICT 0070 00000010 NIDVLAN_ENABLED 0070 00000080 NIDVLAN_FORCED 0070 00000004 NIDVLAN_GBLID 0070 00000020 NIDVLAN_GBLPRT 0070 00000040 NIDVLANS 0078 NIDVLAN1 0078 NIDVLAN2 007A NIDVLAN3 007C NIDVLAN4 007E NIDVQSBK 006C NIDWRACT 001D 10 NIDXDACT 001D 08 NIDXFRLN 0034 NIDXFRPT 0030
Copyright IBM Corporation, 1990, 2003