RE: [PATCH v3 0/6] pci-hyper: Fix race condition bugs for fast device hotplug

From: Dexuan Cui
Date: Thu Apr 20 2023 - 22:04:24 EST


> From: Dexuan Cui <decui@xxxxxxxxxxxxx>
> Sent: Wednesday, April 19, 2023 7:41 PM
> ...
> Before the guest finishes probing a device, the host may be already starting
> to remove the device. Currently there are multiple race condition bugs in the
> pci-hyperv driver, which can cause the guest to panic. The patchset fixes
> the crashes.
>
> The patchset also does some cleanup work: patch 3 removes the useless
> hv_pcichild_state, and patch 4 reverts an old patch which is not really
> useful (without patch 4, it would be hard to make patch 5 clean).
>
> Patch 6 removes the use of a global mutex lock, and enables async-probing
> to allow concurrent device probing for faster boot.
>
> v3 is based on v6.3-rc5. No code change since v2. I just added Michael's
> and Long Li's Reviewed-by.
> ...
>
> Dexuan Cui (6):
> PCI: hv: Fix a race condition bug in hv_pci_query_relations()
> PCI: hv: Fix a race condition in hv_irq_unmask() that can cause panic
> PCI: hv: Remove the useless hv_pcichild_state from struct hv_pci_dev
> Revert "PCI: hv: Fix a timing issue which causes kdump to fail
> occasionally"
> PCI: hv: Add a per-bus mutex state_lock
> PCI: hv: Use async probing to reduce boot time
>
> drivers/pci/controller/pci-hyperv.c | 145 +++++++++++++++++-----------
> 1 file changed, 86 insertions(+), 59 deletions(-)

Hi Bjorn, Lorenzo, since basically this patchset is Hyper-V stuff, I would
like it to go through the hyper-v tree if you have no objection.

The hyper-v tree already has one big PCI patch from Michael:
https://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux.git/commit/?h=hyperv-next&id=2c6ba4216844ca7918289b49ed5f3f7138ee2402

Thanks,
Dexuan