[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 2/2] hw/smbios: retrieve PCI address from specified device
From: |
Michael S. Tsirkin |
Subject: |
Re: [PATCH v2 2/2] hw/smbios: retrieve PCI address from specified device for Type 41 |
Date: |
Thu, 1 Apr 2021 12:32:28 -0400 |
On Thu, Apr 01, 2021 at 04:26:50PM +0200, Vincent Bernat wrote:
> ❦ 1 avril 2021 09:59 -04, Michael S. Tsirkin:
>
> >> + /*
> >> + * TODO: Extract the appropriate value. Most of the
> >> + * time, this will be 0.
> >> + */
> >> + t->segment_group_number = cpu_to_le16(0);
> >> + t->bus_number = pci_dev_bus_num(pdev);
> >> + t->device_number = pdev->devfn;
> >
> > Problem is, for devices behind bridges for example, bus is only
> > configured by guest, after pci has been enumerated.
> >
> > So I suspect this either
> > - needs to be limited to only work for the root bus
> > - needs to be re-evaluted on guest access, like we do
> > with ACPI
>
> Or the address can be provided by the user. I didn't want to keep that
> at this is error prone and there may be surprises after adding a device
> or after a QEMU upgrade.
Or on guest changes.
>
> Otherwise, limiting to the root bus seems a fine limitation by me. How
> do I check that?
pci_bus_is_root will do this. Pls document the reason for the
limitation.
> --
> Don't just echo the code with comments - make every comment count.
> - The Elements of Programming Style (Kernighan & Plauger)
Re: [PATCH v2 1/2] hw/smbios: support for type 41 (onboard devices extended information), Daniel P . Berrangé, 2021/04/01