diff options
author | Sorin Vinturis <svinturis@cloudbasesolutions.com> | 2016-04-07 11:21:12 +0000 |
---|---|---|
committer | Ben Pfaff <blp@ovn.org> | 2016-04-10 12:43:45 -0700 |
commit | 811c911ff523b0cbba4fbf1b4523a63690d522f1 (patch) | |
tree | 7f186e73612ee86e5f3252777f6f225788230ddd /datapath-windows/ovsext/Recirc.h | |
parent | 6982ee960e47616f4bd5178d94740e81feaea26c (diff) | |
download | openvswitch-811c911ff523b0cbba4fbf1b4523a63690d522f1.tar.gz |
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 <svinturis@cloudbasesolutions.com>
Reported-by: Sorin Vinturis <svinturis@cloudbasesolutions.com>
Reported-at: https://github.com/openvswitch/ovs-issues/issues/112
Acked-by: Paul-Daniel Boca <pboca@cloudbasesolutions.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'datapath-windows/ovsext/Recirc.h')
-rw-r--r-- | datapath-windows/ovsext/Recirc.h | 45 |
1 files changed, 7 insertions, 38 deletions
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 @@ -30,19 +30,6 @@ typedef struct _OVS_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 -- * This function processes all deferred actions contained in the queue * corresponding to the current CPU. @@ -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(); /* * -------------------------------------------------------------------------- |