13/10/2020 00:01, Jim Harris:
> When a device is inserted into an existing BDF slot
> that has not been probed, we must overwrite the old
> PCI ID with the ID of the new function. Otherwise
> we may not probe the function with the correct driver,
> if at all.
> 
> Signed-off-by: Jim Harris <james.r.har...@intel.com>
> ---
> --- a/drivers/bus/pci/linux/pci.c
> +++ b/drivers/bus/pci/linux/pci.c
> @@ -352,6 +352,7 @@ pci_scan_one(const char *dirname, const struct 
> rte_pci_addr *addr)
>                               if (!rte_dev_is_probed(&dev2->device)) {
>                                       dev2->kdrv = dev->kdrv;
>                                       dev2->max_vfs = dev->max_vfs;
> +                                     dev2->id = dev->id;

This simple assignment looks nicer than memcpy.
Thanks for this change.

[...]
>                                       if (dev2->kdrv != dev->kdrv ||
> -                                             dev2->max_vfs != dev->max_vfs)
> +                                             dev2->max_vfs != dev->max_vfs ||
> +                                             dev2->id != dev->id)

Unfortunately comparison of structs is not supported.
It seems your original memcmp is right.


Reply via email to