From: Lorenzo Pieralisi lorenzo.pieralisi@arm.com Sent: Monday, April 16, 2018 06:23
Dexuan,
On Mon, Apr 16, 2018 at 12:15:06PM +0200, gregkh@linuxfoundation.org wrote:
The patch below does not apply to the 4.9-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to stable@vger.kernel.org.
Please do as Greg asks in order to complete the stable backport you have requested.
Thanks, Lorenzo
greg k-h
Hi Greg, Lorenzo, It turns out that Hyper-V vPCI driver (drivers/pci/host/pci-hyperv.c) in v4.9.y is broken on latest Hyper-V hosts, because it lacks more fixes, e.g. at least we must cherry-pick these 2 extra fixes: 7dcf90e PCI: hv: Use vPCI protocol version 1.2 b1db7e7 PCI: hv: Add vPCI version protocol negotiation
Otherwise, we always get a "hv_pci ... Request for interrupt failed: 0xc0350005" error, as reported in https://github.com/Microsoft/azure-linux-kernel/issues/13.
The 2 extra fixes depend on a few more patches, and a manual resolution of conflicts is required...
Backporting all the required patches to v4.9 seems too many. IMO we may as well simply drop this patch ("PCI: hv: Serialize the present and eject work items") for v4.9 and 4.10, 4.11 and 4.12, which are all broken due to the same reason.
I can confirm this patch ("PCI: hv: Serialize the present and eject work items") can be applied cleanly to v4.13+.
PS, For Hyper-V users that want PCIe-pass-through and NIC SR-IOV on some certain versions of kernels, they can pick the patches here: https://github.com/Microsoft/azure-linux-kernel.
Thanks, -- Dexuan