Re: [Qemu-devel] [PATCH v2 for-2.13 1/3] net: Remove the deprecated "vlan" parameter

2018-04-10 Thread Thomas Huth
On 06.04.2018 16:17, Paolo Bonzini wrote:
> On 06/04/2018 15:37, Thomas Huth wrote:
>> It's been marked as deprecated since QEMU v2.9.0, so that should have
>> been enough time for everybody to switch to the modern -device + -netdev
>> syntax for connecting guest NICs with host network backends, or to switch
>> to the "hubport" netdev in case hubs are really wanted instead.
> 
> ... or to just drop unnecessary "vlan=0", which is the really common case.
> 
>>
>>  # @NetdevL2TPv3Options:
>>  #
>> -# Connect the VLAN to Ethernet over L2TPv3 Static tunnel
>> +# Configure an Ethernet over L2TPv3 Static tunnel.
>>  #
> 
> Since you are at it, probably remove "Static"?  I don't see the point
> really.

Sure, will do.

>> or the netdev 'nd' (for pluggable\n"
>> "NICs please use '-device devtype,netdev=nd' instead)\n"
> 
> Maybe remove this if -net is prominently marked deprecated?  And mention
> using -nic instead of "-net nic,netdev=...".

Yes, "-net nic,netdev=..." does indeed not make much sense anymore now
that we've got "-nic". I'll remove it from the documentation in the next
version of the patch.

 Thomas



Re: [Qemu-devel] [PATCH v2 for-2.13 1/3] net: Remove the deprecated "vlan" parameter

2018-04-06 Thread Paolo Bonzini
On 06/04/2018 15:37, Thomas Huth wrote:
> It's been marked as deprecated since QEMU v2.9.0, so that should have
> been enough time for everybody to switch to the modern -device + -netdev
> syntax for connecting guest NICs with host network backends, or to switch
> to the "hubport" netdev in case hubs are really wanted instead.

... or to just drop unnecessary "vlan=0", which is the really common case.

> 
>  # @NetdevL2TPv3Options:
>  #
> -# Connect the VLAN to Ethernet over L2TPv3 Static tunnel
> +# Configure an Ethernet over L2TPv3 Static tunnel.
>  #

Since you are at it, probably remove "Static"?  I don't see the point
really.

> or the netdev 'nd' (for pluggable\n"
> "NICs please use '-device devtype,netdev=nd' instead)\n"

Maybe remove this if -net is prominently marked deprecated?  And mention
using -nic instead of "-net nic,netdev=...".

Paolo

> Buglink: https://bugs.launchpad.net/qemu/+bug/658904
> Signed-off-by: Thomas Huth 




[Qemu-devel] [PATCH v2 for-2.13 1/3] net: Remove the deprecated "vlan" parameter

2018-04-06 Thread Thomas Huth
It's been marked as deprecated since QEMU v2.9.0, so that should have
been enough time for everybody to switch to the modern -device + -netdev
syntax for connecting guest NICs with host network backends, or to switch
to the "hubport" netdev in case hubs are really wanted instead.

Buglink: https://bugs.launchpad.net/qemu/+bug/658904
Signed-off-by: Thomas Huth 
---
 docs/qdev-device-use.txt |  3 --
 hw/core/qdev-properties-system.c | 80 
 include/hw/qdev-properties.h |  3 --
 include/net/net.h|  1 -
 net/net.c| 12 ++
 qapi/net.json| 15 
 qemu-doc.texi|  9 -
 qemu-options.hx  | 28 ++
 8 files changed, 22 insertions(+), 129 deletions(-)

diff --git a/docs/qdev-device-use.txt b/docs/qdev-device-use.txt
index 8f188d1..98229b3 100644
--- a/docs/qdev-device-use.txt
+++ b/docs/qdev-device-use.txt
@@ -277,9 +277,6 @@ devices and ne2k_isa are.
 
 Some PCI devices aren't available with -net nic, e.g. i82558a.
 
-To connect to a VLAN instead of an ordinary host part, replace
-netdev=NET-ID by vlan=VLAN.
-
 === Graphics Devices ===
 
 Host and guest part of graphics devices have always been separate.
diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-system.c
index 1d3ba72..8b22fb5 100644
--- a/hw/core/qdev-properties-system.c
+++ b/hw/core/qdev-properties-system.c
@@ -321,86 +321,6 @@ const PropertyInfo qdev_prop_netdev = {
 .set   = set_netdev,
 };
 
-/* --- vlan --- */
-
-static int print_vlan(DeviceState *dev, Property *prop, char *dest, size_t len)
-{
-NetClientState **ptr = qdev_get_prop_ptr(dev, prop);
-
-if (*ptr) {
-int id;
-if (!net_hub_id_for_client(*ptr, &id)) {
-return snprintf(dest, len, "%d", id);
-}
-}
-
-return snprintf(dest, len, "");
-}
-
-static void get_vlan(Object *obj, Visitor *v, const char *name, void *opaque,
- Error **errp)
-{
-DeviceState *dev = DEVICE(obj);
-Property *prop = opaque;
-NetClientState **ptr = qdev_get_prop_ptr(dev, prop);
-int32_t id = -1;
-
-if (*ptr) {
-int hub_id;
-if (!net_hub_id_for_client(*ptr, &hub_id)) {
-id = hub_id;
-}
-}
-
-visit_type_int32(v, name, &id, errp);
-}
-
-static void set_vlan(Object *obj, Visitor *v, const char *name, void *opaque,
- Error **errp)
-{
-DeviceState *dev = DEVICE(obj);
-Property *prop = opaque;
-NICPeers *peers_ptr = qdev_get_prop_ptr(dev, prop);
-NetClientState **ptr = &peers_ptr->ncs[0];
-Error *local_err = NULL;
-int32_t id;
-NetClientState *hubport;
-
-if (dev->realized) {
-qdev_prop_set_after_realize(dev, name, errp);
-return;
-}
-
-visit_type_int32(v, name, &id, &local_err);
-if (local_err) {
-error_propagate(errp, local_err);
-return;
-}
-if (id == -1) {
-*ptr = NULL;
-return;
-}
-if (*ptr) {
-error_set_from_qdev_prop_error(errp, -EINVAL, dev, prop, name);
-return;
-}
-
-hubport = net_hub_port_find(id);
-if (!hubport) {
-error_setg(errp, QERR_INVALID_PARAMETER_VALUE,
-   name, prop->info->name);
-return;
-}
-*ptr = hubport;
-}
-
-const PropertyInfo qdev_prop_vlan = {
-.name  = "int32",
-.description = "Integer VLAN id to connect to",
-.print = print_vlan,
-.get   = get_vlan,
-.set   = set_vlan,
-};
 
 void qdev_prop_set_drive(DeviceState *dev, const char *name,
  BlockBackend *value, Error **errp)
diff --git a/include/hw/qdev-properties.h b/include/hw/qdev-properties.h
index b2ad8e9..4f60cc8 100644
--- a/include/hw/qdev-properties.h
+++ b/include/hw/qdev-properties.h
@@ -29,7 +29,6 @@ extern const PropertyInfo qdev_prop_bios_chs_trans;
 extern const PropertyInfo qdev_prop_fdc_drive_type;
 extern const PropertyInfo qdev_prop_drive;
 extern const PropertyInfo qdev_prop_netdev;
-extern const PropertyInfo qdev_prop_vlan;
 extern const PropertyInfo qdev_prop_pci_devfn;
 extern const PropertyInfo qdev_prop_blocksize;
 extern const PropertyInfo qdev_prop_pci_host_devaddr;
@@ -195,8 +194,6 @@ extern const PropertyInfo qdev_prop_off_auto_pcibar;
 DEFINE_PROP(_n, _s, _f, qdev_prop_string, char*)
 #define DEFINE_PROP_NETDEV(_n, _s, _f) \
 DEFINE_PROP(_n, _s, _f, qdev_prop_netdev, NICPeers)
-#define DEFINE_PROP_VLAN(_n, _s, _f) \
-DEFINE_PROP(_n, _s, _f, qdev_prop_vlan, NICPeers)
 #define DEFINE_PROP_DRIVE(_n, _s, _f) \
 DEFINE_PROP(_n, _s, _f, qdev_prop_drive, BlockBackend *)
 #define DEFINE_PROP_MACADDR(_n, _s, _f) \
diff --git a/include/net/net.h b/include/net/net.h
index 1f7341e..1425960 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -37,7 +37,6 @@ typedef struct NICConf {
 
 #define DEFINE_NIC_PROPERTIES(_state, _con