} OVS_VPORT_STATE;
typedef struct _OVS_VPORT_STATS {
- UINT64 rxBytes;
UINT64 rxPackets;
- UINT64 txBytes;
UINT64 txPackets;
+ UINT64 rxBytes;
+ UINT64 txBytes;
} OVS_VPORT_STATS;
typedef struct _OVS_VPORT_ERR_STATS {
UINT64 rxDropped;
UINT64 txDropped;
} OVS_VPORT_ERR_STATS;
+
+/* used for vport netlink commands. */
+typedef struct _OVS_VPORT_FULL_STATS {
+ OVS_VPORT_STATS;
+ OVS_VPORT_ERR_STATS;
+}OVS_VPORT_FULL_STATS;
/*
* Each internal, external adapter or vritual adapter has
* one vport entry. In addition, we have one vport for each
NDIS_SWITCH_NIC_NAME nicName;
NDIS_VM_NAME vmName;
GUID netCfgInstanceId;
+ BOOLEAN isExternal;
+ UINT32 upcallPid; /* netlink upcall port id */
} OVS_VPORT_ENTRY, *POVS_VPORT_ENTRY;
struct _OVS_SWITCH_CONTEXT;
VOID OvsClearAllSwitchVports(struct _OVS_SWITCH_CONTEXT *switchContext);
-NTSTATUS OvsDumpVportIoctl(PVOID inputBuffer, UINT32 inputLength,
- PVOID outputBuffer, UINT32 outputLength,
- UINT32 *replyLen);
-NTSTATUS OvsGetVportIoctl(PVOID inputBuffer, UINT32 inputLength,
- PVOID outputBuffer, UINT32 outputLength,
- UINT32 *replyLen);
-NTSTATUS OvsAddVportIoctl(PVOID inputBuffer, UINT32 inputLength,
- PVOID outputBuffer, UINT32 outputLength,
- UINT32 *replyLen);
-NTSTATUS OvsDelVportIoctl(PVOID inputBuffer, UINT32 inputLength,
- UINT32 *replyLen);
-NTSTATUS OvsGetExtInfoIoctl(PVOID inputBuffer, UINT32 inputLength,
- PVOID outputBuffer, UINT32 outputLength,
- UINT32 *replyLen);
-NDIS_STATUS OvsCreateNic(POVS_SWITCH_CONTEXT switchContext,
- PNDIS_SWITCH_NIC_PARAMETERS nicParam);
-NDIS_STATUS OvsCreatePort(POVS_SWITCH_CONTEXT switchContext,
- PNDIS_SWITCH_PORT_PARAMETERS portParam);
-VOID OvsTeardownPort(POVS_SWITCH_CONTEXT switchContext,
- PNDIS_SWITCH_PORT_PARAMETERS portParam);
-VOID OvsDeletePort(POVS_SWITCH_CONTEXT switchContext,
- PNDIS_SWITCH_PORT_PARAMETERS portParam);
-VOID OvsConnectNic(POVS_SWITCH_CONTEXT switchContext,
- PNDIS_SWITCH_NIC_PARAMETERS nicParam);
-VOID OvsUpdateNic(POVS_SWITCH_CONTEXT switchContext,
- PNDIS_SWITCH_NIC_PARAMETERS nicParam);
-VOID OvsDeleteNic(POVS_SWITCH_CONTEXT switchContext,
+NDIS_STATUS HvCreateNic(POVS_SWITCH_CONTEXT switchContext,
+ PNDIS_SWITCH_NIC_PARAMETERS nicParam);
+NDIS_STATUS HvCreatePort(POVS_SWITCH_CONTEXT switchContext,
+ PNDIS_SWITCH_PORT_PARAMETERS portParam);
+VOID HvTeardownPort(POVS_SWITCH_CONTEXT switchContext,
+ PNDIS_SWITCH_PORT_PARAMETERS portParam);
+VOID HvDeletePort(POVS_SWITCH_CONTEXT switchContext,
+ PNDIS_SWITCH_PORT_PARAMETERS portParam);
+VOID HvConnectNic(POVS_SWITCH_CONTEXT switchContext,
PNDIS_SWITCH_NIC_PARAMETERS nicParam);
-VOID OvsDisconnectNic(POVS_SWITCH_CONTEXT switchContext,
- PNDIS_SWITCH_NIC_PARAMETERS nicParam);
+VOID HvUpdateNic(POVS_SWITCH_CONTEXT switchContext,
+ PNDIS_SWITCH_NIC_PARAMETERS nicParam);
+VOID HvDeleteNic(POVS_SWITCH_CONTEXT switchContext,
+ PNDIS_SWITCH_NIC_PARAMETERS nicParam);
+VOID HvDisconnectNic(POVS_SWITCH_CONTEXT switchContext,
+ PNDIS_SWITCH_NIC_PARAMETERS nicParam);
static __inline BOOLEAN
OvsIsTunnelVportType(OVS_VPORT_TYPE ovsType)
{
- return ovsType == OVSWIN_VPORT_TYPE_VXLAN ||
- ovsType == OVSWIN_VPORT_TYPE_GRE ||
- ovsType == OVSWIN_VPORT_TYPE_GRE64;
+ return ovsType == OVS_VPORT_TYPE_VXLAN ||
+ ovsType == OVS_VPORT_TYPE_GRE ||
+ ovsType == OVS_VPORT_TYPE_GRE64;
}
static __inline BOOLEAN
OvsIsInternalVportType(OVS_VPORT_TYPE ovsType)
{
- return ovsType == OVSWIN_VPORT_TYPE_INTERNAL;
+ return ovsType == OVS_VPORT_TYPE_INTERNAL;
}
static __inline BOOLEAN
{
ASSERT(OvsIsTunnelVportType(type));
switch(type) {
- case OVSWIN_VPORT_TYPE_VXLAN:
+ case OVS_VPORT_TYPE_VXLAN:
return (POVS_VPORT_ENTRY) OvsGetVportFromIndex(OVS_VXLAN_VPORT_INDEX);
default:
ASSERT(! "OvsGetTunnelVport not implemented for this tunnel.");