summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/Driver.c
diff options
context:
space:
mode:
authorSorin Vinturis <svinturis@cloudbasesolutions.com>2016-04-07 11:21:12 +0000
committerBen Pfaff <blp@ovn.org>2016-04-10 12:43:45 -0700
commit811c911ff523b0cbba4fbf1b4523a63690d522f1 (patch)
tree7f186e73612ee86e5f3252777f6f225788230ddd /datapath-windows/ovsext/Driver.c
parent6982ee960e47616f4bd5178d94740e81feaea26c (diff)
downloadopenvswitch-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/Driver.c')
-rw-r--r--datapath-windows/ovsext/Driver.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/datapath-windows/ovsext/Driver.c b/datapath-windows/ovsext/Driver.c
index 853886e2e..80979ea61 100644
--- a/datapath-windows/ovsext/Driver.c
+++ b/datapath-windows/ovsext/Driver.c
@@ -96,7 +96,10 @@ DriverEntry(PDRIVER_OBJECT driverObject,
UNREFERENCED_PARAMETER(registryPath);
/* Initialize driver associated data structures. */
- OvsInit();
+ status = OvsInit();
+ if (status != NDIS_STATUS_SUCCESS) {
+ goto cleanup;
+ }
gOvsExtDriverObject = driverObject;
@@ -175,12 +178,12 @@ OvsExtUnload(struct _DRIVER_OBJECT *driverObject)
{
UNREFERENCED_PARAMETER(driverObject);
- /* Release driver associated data structures. */
- OvsCleanup();
-
OvsDeleteDeviceObject();
NdisFDeregisterFilterDriver(gOvsExtDriverHandle);
+
+ /* Release driver associated data structures. */
+ OvsCleanup();
}