|
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
Comments :
- Exist in the system execution space.
- Not known by Hardware.
- See Serialization comments in the Assembler section.
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
00000003 NICUNKWN 3 Unknown NIC type - never
coupled
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 Host logical Addr of 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 HL @ of
chain of TKNBKs (See HCPIPY)
NICVLANS represents the Authorized VID set.
When NICVLANS==NULL it means the switch simulation
does not restrict the virtual NIC to any specific
VID set.
When NICVLANS==nonzero it points to the DVLHEAD
structure representing the Authorized VID set for
this virtual NIC on this virtual switch.
0034 52 Address 4 NICVLANS Pointer to list of VLAN groups
0038 56 Signed 2 NICVLCTR Size of Authorized VID set
003A 58 Bitstring 6 * Reserved for IBM Use
NIC Adapter Lock -
Notes : LKWRDSIZ == 3 doublewords.
0040 64 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
0058 88 Signed 4 NICRFCTR Outstanding Reference count
005C 92 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)
.... ..1. NICPAUT X'02' Promiscuous Mode Authority
005D 93 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
...1 .... NICVLNON X'10' No VLAN capability
005E 94 Signed 2 NICPVID Port VLAN ID
0060 96 Address 4 NICNIDHD Host logical address of the first
NIDBK, chained by NIDFPNT/NIDBPNT
0064 100 Address 4 NICNIDTL HL @ of the last NIDBK
Device Specific Area -
0068 104 Bitstring 1 NICQDFMT QDIO Queue Format
0069 105 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)
006A 106 Bitstring 1 * Reserved
006B 107 Bitstring 9 NICADPTK (0) Adapter Name : Length||Token
006B 107 Bitstring 1 NICADPNL Length of NICADPNM Token
006C 108 Character 8 NICADPNM Adapter Name Token
0074 116 Signed 4 NICMPCCT Count of established MPC groups
0078 120 Address 4 NICMPCHD Host logical address of the first
MPCBK, chained by MPCNEXT/MPCPREV
007C 124 Address 4 NICMPCTL HL @ of the last MPCBK
0080 128 Signed 2 NICMAXIQ Maximum INPUT Queues per MPC
0082 130 Signed 2 NICMAXOQ Maximum OUTPUT Queues per MPC
0084 132 Signed 2 NICIPMAX IP Table Limit for this adapter
0086 134 Signed 2 NICIPCTR IP Table Count for this adapter
0088 136 Bitstring 16 NICDEFIP Default IP Address (accounting)
0098 152 Signed 2 NICLLMAX IP Table Limit for this adapter
009A 154 Signed 2 NICLLCTR IP Table Count for this adapter
009C 156 Address 4 NICPROM Pointer to the NIDBK in PROMISC
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.
- Access to the field NICNCABK and the contents of
the NCABK are serialized by the NICCTRLK.
00A0 160 Address 4 NICFPNT Host logical address of the next
NICBK.
00A4 164 Address 4 NICBPNT Host logical address of the
previous NICBK.
00A8 168 Address 4 NICLANBK Host logical address of the
associated LANBK. If NICCNLAN=1
this is a System LAN. Otherwise
this is the PRIVATE LAN that
represents a disconnected
adapter.
00AC 172 Address 4 NICSIGA SIGA Simulation routine Linkage:
HCPCALL R15 Input/Output: Like
HCPIQQWR TMODEAR or TMODESTD
00B0 176 Address 4 NICNCABK Host logical address of the NCABK
00B4 180 Address 4 NICESMVL ESM VLAN List Pointer
Adapter Router entries.
00B8 184 Address 4 NICRXTBL Pointer to IPNBK(Router) list
00BC 188 Signed 2 NICRXCTR Count of Router entries
00BE 190 Bitstring 10 * Reserved
Adapter Counter LKWRD.
The adapter counter lock word serializes the field
NICNCABK, the contents of the NCABK, and the adapter
counters (starting with NICTXBYT.)
Notes : LKWRDSIZ == 3 doublewords.
00C8 200 Dbl-Word 8 NICCTRLK (3) Adapter Counter Lockword
Adapter Counters.
00E0 224 Dbl-Word 8 NICTXBYT Total Bytes Sent
00E8 232 Dbl-Word 8 NICRXBYT Total Bytes Received
00F0 240 Signed 4 NICTXPKT TX Packets extracted
00F4 244 Signed 4 NICTXDSC TX Packets discarded
00F8 248 Signed 4 NICTXERR TX Bad Packets discarded
00FC 252 Signed 4 NICRXPKT RX Packets received
0100 256 Signed 4 NICRXDSC RX Packets discarded/overflow
0104 260 Signed 4 NICRXERR RX Bad Packets discarded
End of the NICBK.
0108 264 Dbl-Word 8 NIC$END (0) End of the NICBK structure
00000108 NICBKLN *-NICBK Length of NICBK in bytes
00000021 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 | NICVLCTR |/////////////////////////////////////////|
* +-------------+-----------------------------------------+
* 40 | |
* = NICLKWRD =
* | |
* +---------------------------+------+------+-------------+
* 58 | NICRFCTR |:CFLG |:VLFLG| NICPVID |
* +---------------------------+------+------+-------------+
* 60 | NICNIDHD | NICNIDTL |
* +------+------+------+------+---------------------------+
* 68 |:QDFMT|:VPORT|//////|:ADPNL| NICADPNM- |
* +------+------+------+------+---------------------------+
* 70 | -(06C) | NICMPCCT |
* +---------------------------+---------------------------+
* 78 | NICMPCHD | NICMPCTL |
* +-------------+-------------+-------------+-------------+
* 80 | NICMAXIQ | NICMAXOQ | NICIPMAX | NICIPCTR |
* +-------------+-------------+-------------+-------------+
* 88 | NICDEFIP |
* | |
* +-------------+-------------+---------------------------+
* 98 | NICLLMAX | NICLLCTR | NICPROM |
* +-------------+-------------+---------------------------+
* A0 | NICFPNT | NICBPNT |
* +---------------------------+---------------------------+
* A8 | NICLANBK | NICSIGA |
* +---------------------------+---------------------------+
* B0 | NICNCABK | NICESMVL |
* +---------------------------+-------------+-------------+
* B8 | NICRXTBL | NICRXCTR |/////////////|
* +---------------------------+-------------+/////////////|
* |///////////////////////////////////////////////////////|
* +-------------------------------------------------------+
* C8 | |
* = NICCTRLK =
* | |
* +-------------------------------------------------------+
* E0 | NICTXBYT |
* +-------------------------------------------------------+
* E8 | NICRXBYT |
* +---------------------------+---------------------------+
* F0 | NICTXPKT | NICTXDSC |
* +---------------------------+---------------------------+
* F8 | NICTXERR | NICRXPKT |
* +---------------------------+---------------------------+
* 100 | NICRXDSC | NICRXERR |
* +---------------------------+---------------------------+
*
*** NICBK - Virtual Network Interface Card block
NICBK Cross Reference
Symbol Dspl Value -------------- ---- ----- NIC$END 0108 NICADPNL 006B NICADPNM 006C NICADPTK 006B NICBASE 0010 NICBKLN 0108 00000108 NICBKSZ 0108 00000021 NICBPNT 00A4 NICCFLG 005C NICCHPID 001F NICCHPTP 001E NICCNLAN 005C 20 NICCTRLK 00C8 NICCUMDL 001A NICCUTYP 0018 NICDEFIP 0088 NICDESC 0000 NICDEVS 0014 NICDLPRG 005C 40 NICDVMDL 001D NICDVTYP 001B NICESMVL 00B4 NICETHER 0017 00000002 NICFPNT 00A0 NICHIPR 0016 00000001 NICINPRG 005C 80 NICIP 0017 00000001 NICIPCTR 0086 NICIPMAX 0084 NICLANBK 00A8 NICLAST 0012 NICLKWRD 0040 NICLLCTR 009A NICLLMAX 0098 NICMAC 0028 NICMAXDV 0108 00000100 NICMAXIQ 0080 NICMAXNT 0108 00000020 NICMAXOQ 0082 NICMFS 0024 NICMPCCT 0074 NICMPCHD 0078 NICMPCTL 007C NICNCABK 00B0 NICNIDHD 0060 NICNIDTL 0064 NICOWNER 0008 NICPAUT 005C 02 NICPROM 009C NICPVID 005E NICPVLAN 005C 10 NICQDFMT 0068 NICQDIO 0016 00000002 NICREADY 005C 08 NICRFCTR 0058 NICROUTR 005C 04 NICRXBYT 00E8 NICRXCTR 00BC NICRXDSC 0100 NICRXERR 0104 NICRXPKT 00FC NICRXTBL 00B8 NICSIGA 00AC NICTKLST 0030 NICTKUID 002E NICTRANP 0017 NICTXBYT 00E0 NICTXDSC 00F4 NICTXERR 00F8 NICTXPKT 00F0 NICTYPE 0016 NICUNKWN 0017 00000003 NICVDEV 0020 NICVLANS 0034 NICVLCTR 0038 NICVLFLG 005D NICVLFLT 005D 20 NICVLGBL 005D 80 NICVLNON 005D 10 NICVLUSR 005D 40 NICVPORT 0069 NICVPORT_ACCESS 0069 00000001 NICVPORT_NONE 0069 00000000 NICVPORT_TRUNK 0069 00000002 NICVSW 0016 00000003
Copyright IBM Corporation, 1990, 2005