Bläddra i källkod

net: Use id_generate() in the network subsystem, too

We already got a global function called id_generate() to create unique
IDs within QEMU. Let's use it in the network subsytem, too, instead of
inventing our own ID scheme here.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20210215090225.1046239-1-thuth@redhat.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Thomas Huth 4 år sedan
förälder
incheckning
27eb3722e4
3 ändrade filer med 5 tillägg och 3 borttagningar
  1. 1 0
      include/qemu/id.h
  2. 3 3
      net/net.c
  3. 1 0
      util/id.c

+ 1 - 0
include/qemu/id.h

@@ -5,6 +5,7 @@ typedef enum IdSubSystems {
     ID_QDEV,
     ID_QDEV,
     ID_BLOCK,
     ID_BLOCK,
     ID_CHR,
     ID_CHR,
+    ID_NET,
     ID_MAX      /* last element, used as array size */
     ID_MAX      /* last element, used as array size */
 } IdSubSystems;
 } IdSubSystems;
 
 

+ 3 - 3
net/net.c

@@ -43,6 +43,7 @@
 #include "qemu/cutils.h"
 #include "qemu/cutils.h"
 #include "qemu/config-file.h"
 #include "qemu/config-file.h"
 #include "qemu/ctype.h"
 #include "qemu/ctype.h"
+#include "qemu/id.h"
 #include "qemu/iov.h"
 #include "qemu/iov.h"
 #include "qemu/qemu-print.h"
 #include "qemu/qemu-print.h"
 #include "qemu/main-loop.h"
 #include "qemu/main-loop.h"
@@ -1111,8 +1112,7 @@ static int net_client_init(QemuOpts *opts, bool is_netdev, Error **errp)
 
 
     /* Create an ID for -net if the user did not specify one */
     /* Create an ID for -net if the user did not specify one */
     if (!is_netdev && !qemu_opts_id(opts)) {
     if (!is_netdev && !qemu_opts_id(opts)) {
-        static int idx;
-        qemu_opts_set_id(opts, g_strdup_printf("__org.qemu.net%i", idx++));
+        qemu_opts_set_id(opts, id_generate(ID_NET));
     }
     }
 
 
     if (visit_type_Netdev(v, NULL, &object, errp)) {
     if (visit_type_Netdev(v, NULL, &object, errp)) {
@@ -1467,7 +1467,7 @@ static int net_param_nic(void *dummy, QemuOpts *opts, Error **errp)
     /* Create an ID if the user did not specify one */
     /* Create an ID if the user did not specify one */
     nd_id = g_strdup(qemu_opts_id(opts));
     nd_id = g_strdup(qemu_opts_id(opts));
     if (!nd_id) {
     if (!nd_id) {
-        nd_id = g_strdup_printf("__org.qemu.nic%i", idx);
+        nd_id = id_generate(ID_NET);
         qemu_opts_set_id(opts, nd_id);
         qemu_opts_set_id(opts, nd_id);
     }
     }
 
 

+ 1 - 0
util/id.c

@@ -35,6 +35,7 @@ static const char *const id_subsys_str[ID_MAX] = {
     [ID_QDEV]  = "qdev",
     [ID_QDEV]  = "qdev",
     [ID_BLOCK] = "block",
     [ID_BLOCK] = "block",
     [ID_CHR] = "chr",
     [ID_CHR] = "chr",
+    [ID_NET] = "net",
 };
 };
 
 
 /*
 /*