Message ID | 20230523110435.1375774-5-thuth@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Use MachineClass->default_nic in more machines | expand |
在 2023/5/23 下午7:04, Thomas Huth 写道: > Mark the default NIC via the new MachineClass->default_nic setting > so that the machine-defaults code in vl.c can decide whether the > default NIC is usable or not (for example when compiling with the > "--without-default-devices" configure switch). > > Signed-off-by: Thomas Huth <thuth@redhat.com> > --- > hw/loongarch/virt.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) Tested-by: Song Gao <gaosong@loongson.cn> Reviewed-by: Song Gao <gaosong@loongson.cn> Thanks. Song Gao > diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c > index 2b7588e32a..ceddec1b23 100644 > --- a/hw/loongarch/virt.c > +++ b/hw/loongarch/virt.c > @@ -474,6 +474,7 @@ static DeviceState *create_platform_bus(DeviceState *pch_pic) > > static void loongarch_devices_init(DeviceState *pch_pic, LoongArchMachineState *lams) > { > + MachineClass *mc = MACHINE_GET_CLASS(lams); > DeviceState *gpex_dev; > SysBusDevice *d; > PCIBus *pci_bus; > @@ -528,7 +529,7 @@ static void loongarch_devices_init(DeviceState *pch_pic, LoongArchMachineState * > NICInfo *nd = &nd_table[i]; > > if (!nd->model) { > - nd->model = g_strdup("virtio"); > + nd->model = g_strdup(mc->default_nic); > } > > pci_nic_init_nofail(nd, pci_bus, nd->model, NULL); > @@ -1038,6 +1039,7 @@ static void loongarch_class_init(ObjectClass *oc, void *data) > mc->default_boot_order = "c"; > mc->no_cdrom = 1; > mc->get_hotplug_handler = virt_machine_get_hotplug_handler; > + mc->default_nic = "virtio-net-pci"; > hc->plug = loongarch_machine_device_plug_cb; > hc->pre_plug = virt_machine_device_pre_plug; > hc->unplug_request = virt_machine_device_unplug_request;
diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c index 2b7588e32a..ceddec1b23 100644 --- a/hw/loongarch/virt.c +++ b/hw/loongarch/virt.c @@ -474,6 +474,7 @@ static DeviceState *create_platform_bus(DeviceState *pch_pic) static void loongarch_devices_init(DeviceState *pch_pic, LoongArchMachineState *lams) { + MachineClass *mc = MACHINE_GET_CLASS(lams); DeviceState *gpex_dev; SysBusDevice *d; PCIBus *pci_bus; @@ -528,7 +529,7 @@ static void loongarch_devices_init(DeviceState *pch_pic, LoongArchMachineState * NICInfo *nd = &nd_table[i]; if (!nd->model) { - nd->model = g_strdup("virtio"); + nd->model = g_strdup(mc->default_nic); } pci_nic_init_nofail(nd, pci_bus, nd->model, NULL); @@ -1038,6 +1039,7 @@ static void loongarch_class_init(ObjectClass *oc, void *data) mc->default_boot_order = "c"; mc->no_cdrom = 1; mc->get_hotplug_handler = virt_machine_get_hotplug_handler; + mc->default_nic = "virtio-net-pci"; hc->plug = loongarch_machine_device_plug_cb; hc->pre_plug = virt_machine_device_pre_plug; hc->unplug_request = virt_machine_device_unplug_request;
Mark the default NIC via the new MachineClass->default_nic setting so that the machine-defaults code in vl.c can decide whether the default NIC is usable or not (for example when compiling with the "--without-default-devices" configure switch). Signed-off-by: Thomas Huth <thuth@redhat.com> --- hw/loongarch/virt.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)