Re: [PATCH 1/6] virNetDevMacVLanCreateWithVPortProfile: Turn vnet_hdr into flag

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/04/2015 07:30 AM, Michal Privoznik wrote:
So yet again one of integer arguments that we use as a boolean.
Since the argument count of the function is unbearably long
enough, lets turn those booleans into flags.

Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx>
---
  src/lxc/lxc_process.c       | 2 +-
  src/qemu/qemu_command.c     | 5 ++---
  src/util/virnetdevmacvlan.c | 4 +---
  src/util/virnetdevmacvlan.h | 9 +++++----
  4 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
index 57e3880..0ada6e4 100644
--- a/src/lxc/lxc_process.c
+++ b/src/lxc/lxc_process.c
@@ -344,7 +344,7 @@ char *virLXCProcessSetupInterfaceDirect(virConnectPtr conn,
              net->ifname, &net->mac,
              linkdev,
              virDomainNetGetActualDirectMode(net),
-            false, def->uuid,
+            def->uuid,
              prof,
              &res_ifname,
              VIR_NETDEV_VPORT_PROFILE_OP_CREATE,
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 4ff31dc..55809e9 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -224,18 +224,17 @@ qemuPhysIfaceConnect(virDomainDefPtr def,
  {
      int rc;
      char *res_ifname = NULL;
-    int vnet_hdr = 0;
      virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver);
      unsigned int macvlan_create_flags = VIR_NETDEV_MACVLAN_CREATE_WITH_TAP;
if (net->model && STREQ(net->model, "virtio"))
-        vnet_hdr = 1;
+        macvlan_create_flags |= VIR_NETDEV_MACVLAN_VNET_HDR;
rc = virNetDevMacVLanCreateWithVPortProfile(
          net->ifname, &net->mac,
          virDomainNetGetActualDirectDev(net),
          virDomainNetGetActualDirectMode(net),
-        vnet_hdr, def->uuid,
+        def->uuid,
          virDomainNetGetActualVirtPortProfile(net),
          &res_ifname,
          vmop, cfg->stateDir,
diff --git a/src/util/virnetdevmacvlan.c b/src/util/virnetdevmacvlan.c
index de345e6..9384b9f 100644
--- a/src/util/virnetdevmacvlan.c
+++ b/src/util/virnetdevmacvlan.c
@@ -727,7 +727,6 @@ virNetDevMacVLanVPortProfileRegisterCallback(const char *ifname,
   * @macaddress: The MAC address for the macvtap device
   * @linkdev: The interface name of the NIC to connect to the external bridge
   * @mode: int describing the mode for 'bridge', 'vepa', 'private' or 'passthru'.
- * @vnet_hdr: 1 to enable IFF_VNET_HDR, 0 to disable it
   * @vmuuid: The UUID of the VM the macvtap belongs to
   * @virtPortProfile: pointer to object holding the virtual port profile data
   * @res_ifname: Pointer to a string pointer where the actual name of the
@@ -743,7 +742,6 @@ int virNetDevMacVLanCreateWithVPortProfile(const char *tgifname,
                                             const virMacAddr *macaddress,
                                             const char *linkdev,
                                             virNetDevMacVLanMode mode,
-                                           int vnet_hdr,
                                             const unsigned char *vmuuid,
                                             virNetDevVPortProfilePtr virtPortProfile,
                                             char **res_ifname,
@@ -764,6 +762,7 @@ int virNetDevMacVLanCreateWithVPortProfile(const char *tgifname,
      const char *cr_ifname = NULL;
      int ret;
      int vf = -1;
+    bool vnet_hdr = flags & VIR_NETDEV_MACVLAN_VNET_HDR;
macvtapMode = modeMap[mode]; @@ -1017,7 +1016,6 @@ int virNetDevMacVLanCreateWithVPortProfile(const char *ifname ATTRIBUTE_UNUSED,
                                             const virMacAddr *macaddress ATTRIBUTE_UNUSED,
                                             const char *linkdev ATTRIBUTE_UNUSED,
                                             virNetDevMacVLanMode mode ATTRIBUTE_UNUSED,
-                                           int vnet_hdr ATTRIBUTE_UNUSED,
                                             const unsigned char *vmuuid ATTRIBUTE_UNUSED,
                                             virNetDevVPortProfilePtr virtPortProfile ATTRIBUTE_UNUSED,
                                             char **res_ifname ATTRIBUTE_UNUSED,
diff --git a/src/util/virnetdevmacvlan.h b/src/util/virnetdevmacvlan.h
index 298e522..b04fc8c 100644
--- a/src/util/virnetdevmacvlan.h
+++ b/src/util/virnetdevmacvlan.h
@@ -41,11 +41,13 @@ typedef enum {
  VIR_ENUM_DECL(virNetDevMacVLanMode)
typedef enum {
-   VIR_NETDEV_MACVLAN_CREATE_NONE     = 0,
+   VIR_NETDEV_MACVLAN_CREATE_NONE       = 0,
     /* Create with a tap device */
-   VIR_NETDEV_MACVLAN_CREATE_WITH_TAP = 1 << 0,
+   VIR_NETDEV_MACVLAN_CREATE_WITH_TAP   = 1 << 0,
     /* Bring the interface up */
-   VIR_NETDEV_MACVLAN_CREATE_IFUP     = 1 << 1,
+   VIR_NETDEV_MACVLAN_CREATE_IFUP       = 1 << 1,
+   /* Enable VNET_HDR */
+   VIR_NETDEV_MACVLAN_VNET_HDR          = 1 << 2,
  } virNetDevMacVLanCreateFlags;

Any reason for the alignment adjustment? If not, it's just fodder for creating merge conflicts later.

Aside from that, ACK.

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]