qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] pci_nic_init_nofail() only works on root PCI buses?


From: Mark Cave-Ayland
Subject: [Qemu-devel] pci_nic_init_nofail() only works on root PCI buses?
Date: Sun, 11 Jun 2017 16:08:27 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0

Hi all,

Playing around with trying to set up PCI bridges for sun4u, I noticed
that I get an assert with the following diff which simply moves the
default NIC behind a PCI bridge rather than being directly on the root
PCI bus:

diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c
index 69f565d..0b17f2e 100644
--- a/hw/sparc64/sun4u.c
+++ b/hw/sparc64/sun4u.c
@@ -465,7 +465,7 @@ static void sun4uv_init(MemoryRegion *address_space_mem,
     parallel_hds_isa_init(isa_bus, MAX_PARALLEL_PORTS);

     for(i = 0; i < nb_nics; i++)
-        pci_nic_init_nofail(&nd_table[i], pci_bus, "ne2k_pci", NULL);
+        pci_nic_init_nofail(&nd_table[i], pci_bus3, "ne2k_pci", NULL);

     ide_drive_get(hd, ARRAY_SIZE(hd));


$ ./qemu-system-sparc64 -nographic
qemu-system-sparc64: hw/pci/pci.c:682: pci_get_bus_devfn: Assertion
`!root->parent_dev' failed.
Aborted

Is there any particular reason why the assert() is set to fail if the
NIC isn't being instantiated on the root PCI bus?


ATB,

Mark.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]