]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
util: Deduplicate code in virNetlinkEventServiceStopAll
authorWang King <king.wang@huawei.com>
Thu, 18 May 2017 04:06:41 +0000 (12:06 +0800)
committerJohn Ferlan <jferlan@redhat.com>
Thu, 18 May 2017 11:26:05 +0000 (07:26 -0400)
Commit 15a71e60 introduced the virNetlinkEventServiceStopAll function, and
the code in virNetlinkEventServiceStop is copied to this function, so just
call virNetlinkEventServiceStop instead.

src/util/virnetlink.c

index 92ecf77dc8a8f696108e4e89dbbf3ed72e92f929..32fe13525996183a589f92557a6ea03d4f8e9a03 100644 (file)
@@ -775,32 +775,12 @@ virNetlinkEventServiceStop(unsigned int protocol)
 int
 virNetlinkEventServiceStopAll(void)
 {
-    size_t i, j;
-    virNetlinkEventSrvPrivatePtr srv = NULL;
+    size_t i;
 
     VIR_INFO("stopping all netlink event services");
 
-    for (i = 0; i < MAX_LINKS; i++) {
-        srv = server[i];
-        if (!srv)
-            continue;
-
-        virNetlinkEventServerLock(srv);
-        nl_close(srv->netlinknh);
-        virNetlinkFree(srv->netlinknh);
-        virEventRemoveHandle(srv->eventwatch);
-
-        for (j = 0; j < srv->handlesCount; j++) {
-            if (srv->handles[j].deleted == VIR_NETLINK_HANDLE_VALID)
-                virNetlinkEventRemoveClientPrimitive(j, i);
-        }
-
-        server[i] = NULL;
-        virNetlinkEventServerUnlock(srv);
-
-        virMutexDestroy(&srv->lock);
-        VIR_FREE(srv);
-    }
+    for (i = 0; i < MAX_LINKS; i++)
+        virNetlinkEventServiceStop(i);
 
     return 0;
 }