❦  3 mai 2021 17:05 +02, Igor Mammedov:

>> +            /*
>> +             * We only handle the case were the device is attached to
>> +             * the PCI root bus. The general case is more complex as
>> +             * bridges are enumerated later and the table would need
>> +             * to be updated at this moment.
>> +             */
>> +            if (!pci_bus_is_root(pci_get_bus(pdev))) {
>> +                error_setg(errp,
>> +                           "Cannot create type 41 entry for PCI device %s: "
>> +                           "not attached to the root bus",
>> +                           t41->pcidev);
>> +                return;
>> +            }
> Is this limitation really necessary?
>
> As far as I see caller of this smbios_get_tables(), is called at machine_done 
> time
> when all devices (including bridges) present on CLI are created.

I wasn't sure how to get the segment group number in this case. It seems
this is not exposed directly. There is a root_bus_path method returning
a string that would need to be parsed to extract the segment group
number. Looking a bit, it seems to be always 0.
-- 
Don't stop with your first draft.
            - The Elements of Programming Style (Kernighan & Plauger)

Reply via email to