diff options
Diffstat (limited to 'datapath-windows/ovsext/IpHelper.c')
-rw-r--r-- | datapath-windows/ovsext/IpHelper.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/datapath-windows/ovsext/IpHelper.c b/datapath-windows/ovsext/IpHelper.c index e995e56ae..6bbd096c5 100644 --- a/datapath-windows/ovsext/IpHelper.c +++ b/datapath-windows/ovsext/IpHelper.c @@ -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; } |