[dpdk-dev] [PATCH] bus/pci: fix unexpected resource mapping override

Thomas Monjalon thomas at monjalon.net
Sun Sep 30 10:52:45 CEST 2018


29/09/2018 08:43, Zhang, Qi Z:
> From: Thomas Monjalon [mailto:thomas at monjalon.net]
> > 
> > Hi,
> > 
> > 03/09/2018 10:40, Qi Zhang:
> > > When scanning an already plugged device, the virtual address of mapped
> > > PCI resource in rte_pci_device will be overridden with 0, that may
> > > cause driver does not work correctly.
> > 
> > Why is it overridden with 0?
> > Can we try to fix the root cause?
> 
> From my view this is place to fix the issue: "scan an already probed device will corrupt the PCI resource map"
> Another option is "to prevent scan an already probed device", this can be implemented by adding some check before bus->scan in rte_dev_hotplug_add but I'm not prefer for this solution, because it's better to keep bus->scan's independency.

I don't understand why we are currently changing an already scanned device
in pci_scan_one.
We could check the PCI address is known at the beginning and stop here,
even before allocating a new rte_pci_device.
Why trying to override with this memmove?




More information about the dev mailing list