Commit a2dbe135 authored by Thomas Huth's avatar Thomas Huth Committed by Jason Wang
Browse files

net: Mark 'vlan' parameter as deprecated



The 'vlan' parameter is a continuous source of confusion for the users,
many people mix it up with the more common term VLAN (the link layer
packet encapsulation), and even if they realize that the QEMU 'vlan' is
rather some kind of network hub emulation, there is still a high risk
that they configure their QEMU networking in a wrong way with this
parameter (e.g. by hooking NICs together, so they get a 'loopback'
between one and the other NIC).
Thus at one point in time, we should finally get rid of the 'vlan'
feature in QEMU. Let's do a first step in this direction by declaring
the 'vlan' parameter as deprecated and informing the users to use the
'netdev' parameter instead.

Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
parent 5dae13cd
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -970,6 +970,7 @@ static int net_client_init1(const void *object, bool is_netdev, Error **errp)
    const Netdev *netdev;
    const char *name;
    NetClientState *peer = NULL;
    static bool vlan_warned;

    if (is_netdev) {
        netdev = object;
@@ -1050,6 +1051,11 @@ static int net_client_init1(const void *object, bool is_netdev, Error **errp)
            !opts->u.nic.data->has_netdev) {
            peer = net_hub_add_port(net->has_vlan ? net->vlan : 0, NULL);
        }

        if (net->has_vlan && !vlan_warned) {
            error_report("'vlan' is deprecated. Please use 'netdev' instead.");
            vlan_warned = true;
        }
    }

    if (net_client_init_fun[netdev->type](netdev, name, peer, errp) < 0) {