[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [RFC PATCH] spapr: add ibmveth to the supported network a
From: |
Alexey Kardashevskiy |
Subject: |
Re: [Qemu-ppc] [RFC PATCH] spapr: add ibmveth to the supported network adapters list |
Date: |
Fri, 18 Oct 2013 16:39:40 +1100 |
User-agent: |
Mozilla/5.0 (X11; Linux i686 on x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.0 |
On 10/11/2013 02:09 PM, Alexey Kardashevskiy wrote:
> The problem is that "-net nic,model=?" does not print "ibmveth" in
> the list while it is actually supported.
>
> Most of the QEMU emulated network devices are PCI but "ibmveth"
> (a.k.a. spapr-vlan) is not. However with "-net nic,model=?", QEMU prints
> only PCI devices in the list, even if it does not say that the list is
> all about PCI devices.
>
> This adds "?"/"help" handling in spapr.c and adds "ibmveth" in the beginning
> of the list.
>
> Signed-off-by: Alexey Kardashevskiy <address@hidden>
> ---
>
> This is an RFC patch.
Ping?
> The other solutions could be:
> 1. add "ibmveth" into pci_nic_models[] in hw/pci/pci.c but this would not
> be correct as "ibmveth" is not PCI and it must appear only on pseries machine.
>
> 2. implemement short version of qdev_print_category_devices() and call it
> with DEVICE_CATEGORY_NETWORK but that would print more devices than
> pci_nic_init_nofail() can handle (vmxnet3, usb-bt-dongle).
>
> 3. fix qemu_check_nic_model() to specifically say that this is a list of
> PCI devices and there might be some other devices which "-net nic,model+"
> supports but there are not PCI but that could break compatibility (some
> management software may rely on this exact string).
>
> 4. Reject the patch and just say that people must stop using "-net". Ok for
> me :)
>
> Since "-net" is kind of obsolete interface and does not seem to be extended
> ever,
> the proposed patch does not look too ugly, does not it?
> ---
> hw/ppc/spapr.c | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index c0613e4..45ed3da 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -1276,6 +1276,21 @@ static void ppc_spapr_init(QEMUMachineInitArgs *args)
>
> if (strcmp(nd->model, "ibmveth") == 0) {
> spapr_vlan_create(spapr->vio_bus, nd);
> + } else if (is_help_option(nd->model)) {
> + static const char * const nic_models[] = {
> + "ibmveth",
> + "ne2k_pci",
> + "i82551",
> + "i82557b",
> + "i82559er",
> + "rtl8139",
> + "e1000",
> + "pcnet",
> + "virtio",
> + NULL
> + };
> + qemu_show_nic_models(nd->model, nic_models);
> + exit(0);
> } else {
> pci_nic_init_nofail(&nd_table[i], phb->bus, nd->model, NULL);
> }
>
--
Alexey