On 18/11/2015 13:31, Paolo Bonzini wrote:
> 
> 
> On 11/11/2015 01:27, Benjamin Herrenschmidt wrote:
>>      if (bridge_dev->flags & (1 << PCI_BRIDGE_DEV_F_SHPC_REQ)) {
>> +        /* SHCP gets upset if we try to use slot 0 */
>> +        br->sec_bus.devfn_min = PCI_FUNC_MAX;
>>          dev->config[PCI_INTERRUPT_PIN] = 0x1;
>>          memory_region_init(&bridge_dev->bar, OBJECT(dev), "shpc-bar",
>>                             shpc_bar_size(dev));
> 
> This needs backwards compatibility gunk unfortunately.  However we
> should fix it in 2.5 because it's a bug.  I'll send a patch.

Actually it turns out that the forbidden configuration is blocked elsewhere:

$ x86_64-softmmu/qemu-system-x86_64 \
        -device pci-bridge,id=foo,chassis_nr=1 \
        -device virtio-scsi-pci,bus=foo
qemu-system-x86_64: -device virtio-scsi-pci,bus=foo: Unsupported PCI
slot 0 for standard hotplug controller. Valid slots are between 1 and 31.

so this patch is just allowing the above command line to work.  There's
no effect with or without the patch if addr=0, so the patch is good for
2.5 IMO.

Michael, can you queue it?

Paolo

Reply via email to