> From: Michael Kelley (LINUX) <mikelley@xxxxxxxxxxxxx> > Sent: Wednesday, March 29, 2023 9:55 AM > > From: Dexuan Cui <decui@xxxxxxxxxxxxx> > > > > Commit 414428c5da1c ("PCI: hv: Lock PCI bus on device eject") added the > > pci_lock_rescan_remove() and pci_unlock_rescan_remove() to address the > > race between create_root_hv_pci_bus() and hv_eject_device_work(), but it > > doesn't really work well. > > > > Now with hbus->state_lock and other fixes, the race is resolved, so > > remove pci_{lock,unlock}_rescan_remove(). > > Commit 414428c5da1c added the calls to pci_lock/unlock_rescan_remove() > in both create_root_hv_pci_bus() and in hv_eject_device_work(). This > patch removes the calls only in create_reboot_hv_pci_bus(), but leaves > them in hv_eject_device_work(), in hv_pci_remove(), and in > pci_devices_present_work(). > So evidently it is still needed to provide exclusion for other cases. Perhaps > your commit message could clarify that only the exclusion of > create_root_hv_pci_bus() > is now superfluous because of the > hbus->state_lock. And commit 414428c5da1c > isn't fully reverted > because evidently the lock is still needed in hv_eject_device_work(). > > Michael Thanks! I'll update the commit message in v2.