> On 17/01/19, 8:37 PM, "Bjorn Helgaas" <helgaas@xxxxxxxxxx> wrote: > > > On Fri, Jan 18, 2019 at 02:17:18AM +0530, Ajay Kaher wrote: > > Update the Hyper-V vPCI driver to use the Server-2016 version of the vPCI > > protocol, fixing MSI creation and retargeting issues. > > > > Replaced hv_tmp_cpu_nr_to_vp_nr() with vmbus_cpu_number_to_vp_number() > > to make this patch compatibale for linux v4.9. > > s/compatibale for/compatible with/ > > This change (to make it compatible with v4.9) sounds like it should be > in its own separate patch. I don't see any use of > hv_tmp_cpu_nr_to_vp_nr() being removed, so the changelog doesn't quite > make sense. hv_tmp_cpu_nr_to_vp_nr() is not removed, v4.9 doesn't have this API, and because of this failed to apply the original patch on v4.9. That's the reason to use vmbus_cpu_number_to_vp_number() instead of hv_tmp_cpu_nr_to_vp_nr(). I will change the explanation in changelog to: Because v4.9 doesn't have hv_tmp_cpu_nr_to_vp_nr(), so original patch from v4.14 fails to apply on v4.9. To solve this, using vmbus_cpu_number_to_vp_number() instead of hv_tmp_cpu_nr_to_vp_nr() in this patch. Here, I would like maintainer of HyperV to review this change and provide their feedback. Tested these patches on Azure Server with VM of size L16s_v2 and it's working fine. > > Signed-off-by: Jork Loeser <jloeser@xxxxxxxxxxxxx> > > Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> > > I did not sign off on this; please remove. Sorry, I kept as it is from original patch. I will change this in next version of this patch. > > Reviewed-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx> > > Acked-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx> > > Signed-off-by: Ajay Kaher <akaher@xxxxxxxxxx> > > > + * struct hv_msi_desc2 - 1.2 version of hv_msi_desc > > + * @vector: IDT entry > > + * @delivery_mode: As defined in Intel's Programmer's > > + * Reference Manual, Volume 3, Chapter 8. > > + * @vector_count: Number of contiguous entries in the > > + * Interrupt Descriptor Table that are > > + * occupied by this Message-Signaled > > + * Interrupt. For "MSI", as first defined > > + * in PCI 2.2, this can be between 1 and > > + * 32. For "MSI-X," as first defined in PCI > > + * 3.0, this must be 1, as each MSI-X table > > + * entry would have its own descriptor. > > Please reflow these descriptions to take advantage of an 80 column > width. They are currently wrapped to fit in 50 columns, which is > unnecessarily short. Thanks, I will change this in next version of this patch. > > + default: > > + /* As we only negotiate protocol versions known to this driver, > > + * this path should never hit. However, this is it not a hot > > + * path so we print a message to aid future updates. > > + */ > > + dev_err(&hbus->hdev->device, > > + "Unexpected vPCI protocol, update driver."); > Include the actual protocol version in the message? Thanks, I will try to change this in next version.