]> git.proxmox.com Git - mirror_ovs.git/commitdiff
datapath-windows: Fix static analysis warnings around ovsInstanceListLock
authorAlin Serdean <aserdean@cloudbasesolutions.com>
Mon, 6 Nov 2017 15:33:38 +0000 (17:33 +0200)
committerAlin Gabriel Serdean <aserdean@ovn.org>
Wed, 29 Nov 2017 14:51:17 +0000 (16:51 +0200)
Check for return value when trying to initialize ovsInstanceListLock.

Also return the status back to caller of `OvsInitIpHelper`.

Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com>
Acked-by: Shashank Ram <shashank08@gmail.com>
datapath-windows/ovsext/IpHelper.c

index e995e56aec7dd1033eb5f8b9cc319f8219b9247d..6bbd096c53b0aa5123f6943b464894b53771550e 100644 (file)
@@ -1989,6 +1989,12 @@ OvsInitIpHelper(NDIS_HANDLE ndisFilterHandle)
     HANDLE threadHandle;
     UINT32 i;
 
+    status = ExInitializeResourceLite(&ovsInstanceListLock);
+    if (status != NDIS_STATUS_SUCCESS) {
+        return status;
+    }
+    InitializeListHead(&ovsInstanceList);
+
     ovsFwdHashTable = (PLIST_ENTRY)OvsAllocateMemoryWithTag(
         sizeof(LIST_ENTRY) * OVS_FWD_HASH_TABLE_SIZE, OVS_IPHELPER_POOL_TAG);
 
@@ -2009,9 +2015,6 @@ OvsInitIpHelper(NDIS_HANDLE ndisFilterHandle)
     ipRouteNotificationHandle = NULL;
     unicastIPNotificationHandle = NULL;
 
-    ExInitializeResourceLite(&ovsInstanceListLock);
-    InitializeListHead(&ovsInstanceList);
-
     if (ovsFwdHashTable == NULL ||
         ovsRouteHashTable == NULL ||
         ovsNeighHashTable == NULL ||
@@ -2074,7 +2077,7 @@ init_cleanup:
         ExDeleteResourceLite(&ovsInstanceListLock);
         NdisFreeSpinLock(&ovsIpHelperLock);
     }
-    return STATUS_SUCCESS;
+    return status;
 }