linux-hyperv.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/2] PCI: hv: Refactor hv_irq_unmask() to use hv_vpset and cpumask_to_vpset()
@ 2019-02-28  2:32 Maya Nakamura
  2019-02-28  2:35 ` [PATCH v4 1/2] PCI: hv: Replace hv_vp_set with hv_vpset Maya Nakamura
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Maya Nakamura @ 2019-02-28  2:32 UTC (permalink / raw)
  To: lorenzo.pieralisi, bhelgaas, linux-pci, kys, sthemmin, olaf, apw,
	jasowang, mikelley, Alexander.Levin
  Cc: linux-kernel, haiyangz, vkuznets, marcelo.cerri, linux-hyperv

This patchset removes a duplicate definition of VP set (hv_vp_set) and
uses the common definition (hv_vpset) that is used in other places. It
changes the order of the members in struct hv_pcibus_device due to
flexible array in hv_vpset.

It also removes the duplicate implementation of cpumask_to_vpset(), uses
the shared implementation, and exports hv_max_vp_index, which is
required by cpumask_to_vpset().

Based on Vitaly's findings, two changes were applied: replace GFP_KERNEL
with GFP_ATOMIC for alloc_cpumask_var() because hv_irq_unmask() runs
while a spinlock is held, and add __aligned(8) to struct
retarget_msi_interrupt because Hyper-V requires that hypercall arguments
be aligned on an 8 byte boundary.

Vitaly, thank you for finding the issues, and Lorenzo and Michael, thank
you for your guidance and support!

Maya Nakamura (2):
  PCI: hv: Replace hv_vp_set with hv_vpset
  PCI: hv: Refactor hv_irq_unmask() to use cpumask_to_vpset()

 arch/x86/hyperv/hv_init.c           |  1 +
 drivers/pci/controller/pci-hyperv.c | 61 +++++++++++++----------------
 2 files changed, 29 insertions(+), 33 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-02-28 10:56 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-28  2:32 [PATCH v4 0/2] PCI: hv: Refactor hv_irq_unmask() to use hv_vpset and cpumask_to_vpset() Maya Nakamura
2019-02-28  2:35 ` [PATCH v4 1/2] PCI: hv: Replace hv_vp_set with hv_vpset Maya Nakamura
2019-02-28 10:09   ` Lorenzo Pieralisi
2019-02-28  2:37 ` [PATCH v4 2/2] PCI: hv: Refactor hv_irq_unmask() to use cpumask_to_vpset() Maya Nakamura
2019-02-28 10:56 ` [PATCH v4 0/2] PCI: hv: Refactor hv_irq_unmask() to use hv_vpset and cpumask_to_vpset() Vitaly Kuznetsov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).