|
Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
NICBK
Control Block Contents
NICBK DSECT
Cross Reference (Contains links to field and bit definitions)
NICBK Prolog
NAME : HCPNICBK
DESCRIPTION: Virtual Network Interface Card block
DSECT : NICBK
FUNCTION :
Define a structure to represent a Network Interface
Card. One NICBK exists for each Virtual Adapter.
Each NICBK is associated with a set of Virtual
Network Interface Devices (VDEV/NIDBK).
LOCATED BY -
VDEVNIC = Pointer to owning adapter NICBK
NIDNICBK = Pointer to owning adapter NICBK
LNKNICHD = Pointer to chain of coupled adapter NICBK
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
NICBK Control Block Content
NICBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure NICBK Virtual Network Interface Card
block
Static Area -
The fields in this area are relatively constant.
They are initialized when the adapter (NIC) is
created, and may be referenced with minimal
serialization (just enough to be sure your pointer
to the NICBK is valid).
0000 0 Character 8 NICDESC NIC Description (e.g. HIPER)
0008 8 Character 8 NICOWNER NIC Owner VM Userid
0010 16 Signed 2 NICBASE NIC Base Virtual Device Address
0012 18 Signed 2 NICLAST NIC Last Virtual Device Address
0014 20 Signed 2 NICDEVS NIC Device Count
0016 22 Bitstring 1 NICTYPE Network Device Type
00000001 NICHIPR 1 HiperSockets adapter type
00000002 NICQDIO 2 QDIO adapter type
00000003 NICVSW 3 QDIO VSWITCH connection
0017 23 Bitstring 1 NICTRANP Transport type
00000001 NICIP 1 Layer 3 IP datagrams
00000002 NICETHER 2 Layer 2 Ethernet frames
0018 24 Bitstring 2 NICCUTYP Simulated Control Unit Type
001A 26 Bitstring 1 NICCUMDL Simulated Control Unit Model
001B 27 Bitstring 2 NICDVTYP Simulated Device Type
001D 29 Bitstring 1 NICDVMDL Simulated Device Model
001E 30 Bitstring 1 NICCHPTP CHPID type for this adapter
001F 31 Bitstring 1 NICCHPID CHPID for this adapter
0020 32 Address 4 NICVDEV Pointer to Base VDEV
0024 36 Signed 4 NICMFS MFS (bytes) for current LAN
0028 40 Bitstring 6 NICMAC MAC Address for this adapter
002E 46 Bitstring 2 NICTKUID Latest unique token id
0030 48 Address 4 NICTKLST List of Unique Tokens
NICVLANS represents the set of authorized VLAN groups.
When NICVLFLG.NICVLGBL = ON :
NICPVID==VID (XL2) default (set by system)
When NICVLFLG.NICVLUSR = ON :
NICVLANS->VLABK defines the list of valid VLAN IDs
When NICVLFLG.NICVLFLT = ON :
Filter by VID set (OFF when LAN is VLAN UNAWARE)
0034 52 Address 4 NICVLANS Pointer to list of VLAN groups
NIC Adapter Lock -
Notes : LKWRDSIZ == 3 doublewords.
0038 56 Dbl-Word 8 NICLKWRD (3) Adapter Lockword
Adapter Management Area -
The fields in this area are used in the normal
operation of the adapter (NIC). In general,
these fields are serialized by the NIC Adapter Lock:
- Hold NICLKWRD EXCLUSIVE to update
- Hold NICLKWRD SHARED to reference
0050 80 Signed 4 NICRFCTR Outstanding Reference count
0054 84 Bitstring 1 NICCFLG Adapter Configuration flags
1... .... NICINPRG X'80' Initialization in Progress
.1.. .... NICDLPRG X'40' Delete in Progress
..1. .... NICCNLAN X'20' Connected to a SYSTEM LAN
...1 .... NICPVLAN X'10' Connected to a PRIVATE LAN
.... 1... NICREADY X'08' LAN READY
.... .1.. NICROUTR X'04' NETROUTER is set (USER
DIRECT)
0055 85 Bitstring 1 NICVLFLG VLAN attribute flags
1... .... NICVLGBL X'80' Global VLAN (NICPVID) is
set
.1.. .... NICVLUSR X'40' User selects from NICVLANS
list
..1. .... NICVLFLT X'20' Filter by VID set
0056 86 Signed 2 NICPVID Port VLAN ID
0058 88 Address 4 NICNIDHD Pointer to First NIDBK
005C 92 Address 4 NICNIDTL Pointer to Last NIDBK
Device Specific Area -
0060 96 Bitstring 1 NICQDFMT QDIO Queue Format
0061 97 Bitstring 1 NICVPORT Virtual Port attributes
00000000 NICVPORT_NONE 0 = Undefined (VLAN UNAWARE)
00000001 NICVPORT_ACCESS
1 = Access Port (untagged)
00000002 NICVPORT_TRUNK 2 = Trunk Port (tagged or mixed)
0062 98 Bitstring 1 * Reserved
0063 99 Bitstring 9 NICADPTK (0) Adapter Name : Length||Token
0063 99 Bitstring 1 NICADPNL Length of NICADPNM Token
0064 100 Character 8 NICADPNM Adapter Name Token
006C 108 Signed 4 NICMPCCT Count of established MPC groups
0070 112 Address 4 NICMPCHD Pointer to First MPCBK
0074 116 Address 4 NICMPCTL Pointer to Last MPCBK
0078 120 Signed 2 NICMAXIQ Maximum INPUT Queues per MPC
007A 122 Signed 2 NICMAXOQ Maximum OUTPUT Queues per MPC
007C 124 Signed 2 NICIPMAX IP Table Limit for this adapter
007E 126 Signed 2 NICIPCTR IP Table Count for this adapter
0080 128 Bitstring 16 NICDEFIP Default IP Address (accounting)
0090 144 Signed 2 NICLLMAX IP Table Limit for this adapter
0092 146 Signed 2 NICLLCTR IP Table Count for this adapter
0094 148 Bitstring 4 * Reserved
LAN Management Area -
The fields in this area are used to connect the
adapter (NIC) to a Virtual LAN.
To connect or disconnect this adapter (NIC) to/from
a Virtual LAN, the following locks must be obtained
(in this sequence):
- The LAN Lock (LANLKWRD) EXCLUSIVE
- The NIC Adapter Lock (NICLKWRD) EXCLUSIVE
To reference these fields (e.g. while following
the chain) you only need to hold LANLKWRD SHARED.
0098 152 Address 4 NICFPNT Pointer to Next NICBK
009C 156 Address 4 NICBPNT Pointer to Prev NICBK
00A0 160 Address 4 NICLANBK Pointer to associated LANBK. If
NICCNLAN=1 this is a System LAN.
Otherwise this is the PRIVATE LAN
that represents a disconnected
adapter.
00A4 164 Address 4 NICSIGA SIGA Simulation routine
00A8 168 Address 4 NICNCABK Pointer to NCABK
00AC 172 Address 4 NICESMVL ESM VLAN List Pointer
Adapter Router entries.
00B0 176 Address 4 NICRXTBL Pointer to IPNBK(Router) list
00B4 180 Signed 2 NICRXCTR Count of Router entries
00B6 182 Bitstring 10 * Reserved
Adapter Counter LKWRD.
Notes : LKWRDSIZ == 3 doublewords.
00C0 192 Dbl-Word 8 NICCTRLK (3) Adapter Counter Lockword
Adapter Counters.
00D8 216 Dbl-Word 8 NICTXBYT Total Bytes Sent
00E0 224 Dbl-Word 8 NICRXBYT Total Bytes Received
00E8 232 Signed 4 NICTXPKT TX Packets extracted
00EC 236 Signed 4 NICTXDSC TX Packets discarded
00F0 240 Signed 4 NICTXERR TX Bad Packets discarded
00F4 244 Signed 4 NICRXPKT RX Packets received
00F8 248 Signed 4 NICRXDSC RX Packets discarded/overflow
00FC 252 Signed 4 NICRXERR RX Bad Packets discarded
End of the NICBK.
0100 256 Dbl-Word 8 NIC$END (0) End of the NICBK structure
00000100 NICBKLN *-NICBK Length of NICBK in bytes
00000020 NICBKSZ (*-NICBK+7)/8 Size of NICBK in
doublewords
Related constants.
00000100 NICMAXDV 256 Max Network Devices per NIC
00000020 NICMAXNT 32 Max Network Ports per NIC
NICBK Storage Layout
*** NICBK - Virtual Network Interface Card block
*
* +-------------------------------------------------------+
* 0 | NICDESC |
* +-------------------------------------------------------+
* 8 | NICOWNER |
* +-------------+-------------+-------------+------+------+
* 10 | NICBASE | NICLAST | NICDEVS |:TYPE |:TRANP|
* +-------------+------+------+------+------+------+------+
* 18 | NICCUTYP |:CUMDL| NICDVTYP |:DVMDL|:CHPTP|:CHPID|
* +-------------+------+------+------+------+------+------+
* 20 | NICVDEV | NICMFS |
* +---------------------------+-------------+-------------+
* 28 | NICMAC | NICTKUID |
* +---------------------------+-------------+-------------+
* 30 | NICTKLST | NICVLANS |
* +---------------------------+---------------------------+
* 38 | |
* = NICLKWRD =
* | |
* +---------------------------+------+------+-------------+
* 50 | NICRFCTR |:CFLG |:VLFLG| NICPVID |
* +---------------------------+------+------+-------------+
* 58 | NICNIDHD | NICNIDTL |
* +------+------+------+------+---------------------------+
* 60 |:QDFMT|:VPORT|//////|:ADPNL| NICADPNM- |
* +------+------+------+------+---------------------------+
* 68 | -(064) | NICMPCCT |
* +---------------------------+---------------------------+
* 70 | NICMPCHD | NICMPCTL |
* +-------------+-------------+-------------+-------------+
* 78 | NICMAXIQ | NICMAXOQ | NICIPMAX | NICIPCTR |
* +-------------+-------------+-------------+-------------+
* 80 | NICDEFIP |
* | |
* +-------------+-------------+---------------------------+
* 90 | NICLLMAX | NICLLCTR |///////////////////////////|
* +-------------+-------------+---------------------------+
* 98 | NICFPNT | NICBPNT |
* +---------------------------+---------------------------+
* A0 | NICLANBK | NICSIGA |
* +---------------------------+---------------------------+
* A8 | NICNCABK | NICESMVL |
* +---------------------------+-------------+-------------+
* B0 | NICRXTBL | NICRXCTR |/////////////|
* +---------------------------+-------------+/////////////|
* |///////////////////////////////////////////////////////|
* +-------------------------------------------------------+
* C0 | |
* = NICCTRLK =
* | |
* +-------------------------------------------------------+
* D8 | NICTXBYT |
* +-------------------------------------------------------+
* E0 | NICRXBYT |
* +---------------------------+---------------------------+
* E8 | NICTXPKT | NICTXDSC |
* +---------------------------+---------------------------+
* F0 | NICTXERR | NICRXPKT |
* +---------------------------+---------------------------+
* F8 | NICRXDSC | NICRXERR |
* +---------------------------+---------------------------+
*
*** NICBK - Virtual Network Interface Card block
NICBK Cross Reference
Symbol Dspl Value -------------- ---- ----- NIC$END 0100 NICADPNL 0063 NICADPNM 0064 NICADPTK 0063 NICBASE 0010 NICBKLN 0100 00000100 NICBKSZ 0100 00000020 NICBPNT 009C NICCFLG 0054 NICCHPID 001F NICCHPTP 001E NICCNLAN 0054 20 NICCTRLK 00C0 NICCUMDL 001A NICCUTYP 0018 NICDEFIP 0080 NICDESC 0000 NICDEVS 0014 NICDLPRG 0054 40 NICDVMDL 001D NICDVTYP 001B NICESMVL 00AC NICETHER 0017 00000002 NICFPNT 0098 NICHIPR 0016 00000001 NICINPRG 0054 80 NICIP 0017 00000001 NICIPCTR 007E NICIPMAX 007C NICLANBK 00A0 NICLAST 0012 NICLKWRD 0038 NICLLCTR 0092 NICLLMAX 0090 NICMAC 0028 NICMAXDV 0100 00000100 NICMAXIQ 0078 NICMAXNT 0100 00000020 NICMAXOQ 007A NICMFS 0024 NICMPCCT 006C NICMPCHD 0070 NICMPCTL 0074 NICNCABK 00A8 NICNIDHD 0058 NICNIDTL 005C NICOWNER 0008 NICPVID 0056 NICPVLAN 0054 10 NICQDFMT 0060 NICQDIO 0016 00000002 NICREADY 0054 08 NICRFCTR 0050 NICROUTR 0054 04 NICRXBYT 00E0 NICRXCTR 00B4 NICRXDSC 00F8 NICRXERR 00FC NICRXPKT 00F4 NICRXTBL 00B0 NICSIGA 00A4 NICTKLST 0030 NICTKUID 002E NICTRANP 0017 NICTXBYT 00D8 NICTXDSC 00EC NICTXERR 00F0 NICTXPKT 00E8 NICTYPE 0016 NICVDEV 0020 NICVLANS 0034 NICVLFLG 0055 NICVLFLT 0055 20 NICVLGBL 0055 80 NICVLUSR 0055 40 NICVPORT 0061 NICVPORT_ACCESS 0061 00000001 NICVPORT_NONE 0061 00000000 NICVPORT_TRUNK 0061 00000002 NICVSW 0016 00000003
Copyright IBM Corporation, 1990, 2004