From 811c911ff523b0cbba4fbf1b4523a63690d522f1 Mon Sep 17 00:00:00 2001 From: Sorin Vinturis Date: Thu, 7 Apr 2016 11:21:12 +0000 Subject: datapath-windows: Hot add CPU support. Hot add CPU is the ability to dynamically add CPUs to a running system. Adding CPUs can occur physically by adding new hardware, logically by online hardware partitioning, or virtually through a virtualization layer. This patch add support to reallocate any per-cpu resources, in case a new processor is added. Signed-off-by: Sorin Vinturis Reported-by: Sorin Vinturis Reported-at: https://github.com/openvswitch/ovs-issues/issues/112 Acked-by: Paul-Daniel Boca Signed-off-by: Ben Pfaff --- datapath-windows/ovsext/Recirc.h | 45 +++++++--------------------------------- 1 file changed, 7 insertions(+), 38 deletions(-) (limited to 'datapath-windows/ovsext/Recirc.h') diff --git a/datapath-windows/ovsext/Recirc.h b/datapath-windows/ovsext/Recirc.h index ee0576347..2b314ce27 100644 --- a/datapath-windows/ovsext/Recirc.h +++ b/datapath-windows/ovsext/Recirc.h @@ -28,19 +28,6 @@ typedef struct _OVS_DEFERRED_ACTION { OvsFlowKey key; } OVS_DEFERRED_ACTION, *POVS_DEFERRED_ACTION; -/* - * -------------------------------------------------------------------------- - * '_OVS_DEFERRED_ACTION_QUEUE' structure is responsible for keeping track of - * all deferred actions. The maximum number of deferred actions should not - * exceed 'DEFERRED_ACTION_QUEUE_SIZE'. - * -------------------------------------------------------------------------- - */ -typedef struct _OVS_DEFERRED_ACTION_QUEUE { - UINT32 head; - UINT32 tail; - OVS_DEFERRED_ACTION queue[DEFERRED_ACTION_QUEUE_SIZE]; -} OVS_DEFERRED_ACTION_QUEUE, *POVS_DEFERRED_ACTION_QUEUE; - /* * -------------------------------------------------------------------------- * OvsProcessDeferredActions -- @@ -69,39 +56,21 @@ OvsAddDeferredActions(PNET_BUFFER_LIST packet, /* * -------------------------------------------------------------------------- - * OvsDeferredActionsQueueAlloc -- - * The function allocates per-cpu deferred actions queue. - * -------------------------------------------------------------------------- - */ -BOOLEAN -OvsDeferredActionsQueueAlloc(); - -/* - * -------------------------------------------------------------------------- - * OvsDeferredActionsQueueFree -- - * The function frees per-cpu deferred actions queue. - * -------------------------------------------------------------------------- - */ -VOID -OvsDeferredActionsQueueFree(); - -/* - * -------------------------------------------------------------------------- - * OvsDeferredActionsLevelAlloc -- - * The function allocates per-cpu deferred actions execution level. + * OvsDeferredActionsInit -- + * The function allocates all necessary deferred actions resources. * -------------------------------------------------------------------------- */ -BOOLEAN -OvsDeferredActionsLevelAlloc(); +NTSTATUS +OvsDeferredActionsInit(); /* * -------------------------------------------------------------------------- - * OvsDeferredActionsLevelFree -- - * The function frees per-cpu deferred actions execution level. + * OvsDeferredActionsCleanup -- + * The function frees all deferred actions resources. * -------------------------------------------------------------------------- */ VOID -OvsDeferredActionsLevelFree(); +OvsDeferredActionsCleanup(); /* * -------------------------------------------------------------------------- -- cgit v1.2.1