Re: [PATCH v2] hw/sparc64/sun4u: Mark unusable PCI busses as full to ease device plugging

Michael Tokarev <[email protected]> Mon, 8 Jun 2026 11:26:55 +0300
Newsgroups org.nongnu.qemu-trivial,org.nongnu.qemu-devel
Message-ID <[email protected]>
On 30.04.2026 12:50, Thomas Huth wrote:
> On 09/03/2026 19.14, Thomas Huth wrote:
>> From: Thomas Huth <[email protected]>
>>
>> When trying to plug a PCI device to a Sparc64 machine, you currently
>> have to specify the right bus ("bus=pciB"), otherwise you get this error:
>>
>>   $ qemu-system-sparc64 -device virtio-scsi-pci
>>   qemu-system-sparc64: -device virtio-scsi-pci: PCI: no slot/function
>>   available for virtio-scsi-pci, all in use or reserved
>>
>> This is quite annoying for the unexperienced users, and it also breaks
>> e.g. the iotests ("make check-block") when running with qemu-system- 
>> sparc64.
>>
>> Mark the non-usable PCI busses as full now, so that QEMU can 
>> automatically
>> plug new PCI devices to the right "pciB" bus.
>>
>> Signed-off-by: Thomas Huth <[email protected]>
>> ---
>>   v2: Do the change in the machine code, not in the sabre device
>>
>>   hw/sparc64/sun4u.c | 7 +++++++
>>   1 file changed, 7 insertions(+)
>>
>> diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c
>> index b8bda1eb816..37539535c6c 100644
>> --- a/hw/sparc64/sun4u.c
>> +++ b/hw/sparc64/sun4u.c
>> @@ -723,6 +723,13 @@ static void sun4uv_init(MemoryRegion 
>> *address_space_mem,
>>       fw_cfg_add_i16(fw_cfg, FW_CFG_SPARC64_DEPTH, graphic_depth);
>>       qemu_register_boot_set(fw_cfg_boot_set, fw_cfg);
>> +
>> +    /*
>> +     * Mark internal PCI busses as full so that the plugging of 
>> additional
>> +     * PCI devices happens on the right bus that still has free slots:
>> +     */
>> +    qbus_mark_full(&pci_bus->qbus);
>> +    qbus_mark_full(&pci_busA->qbus);
>>   }
>>   enum {
> 
> Friendly ping!

This, being a simple change, somehow has not been reviewed still, so
it's sitting in the queue...

/mjt