On Mon, Feb 10, 2020 at 05:05:21PM +0800, Zha Bin wrote: > From: Liu Jiang <ge...@linux.alibaba.com> > > virtio-mmio supports a generic MSI irq domain for all archs. This > patch adds the x86 architecture support. > > Signed-off-by: Liu Jiang <ge...@linux.alibaba.com> > Co-developed-by: Zha Bin <zha...@linux.alibaba.com> > Signed-off-by: Zha Bin <zha...@linux.alibaba.com> > Co-developed-by: Jing Liu <jing2....@linux.intel.com> > Signed-off-by: Jing Liu <jing2....@linux.intel.com> > Co-developed-by: Chao Peng <chao.p.p...@linux.intel.com> > Signed-off-by: Chao Peng <chao.p.p...@linux.intel.com> > --- > arch/x86/kernel/apic/msi.c | 11 ++++++++++-
Patches like this need to CC x86 maintainers. > 1 file changed, 10 insertions(+), 1 deletion(-) > > diff --git a/arch/x86/kernel/apic/msi.c b/arch/x86/kernel/apic/msi.c > index 159bd0c..2fcd602 100644 > --- a/arch/x86/kernel/apic/msi.c > +++ b/arch/x86/kernel/apic/msi.c > @@ -45,7 +45,11 @@ static void __irq_msi_compose_msg(struct irq_cfg *cfg, > struct msi_msg *msg) > MSI_DATA_VECTOR(cfg->vector); > } > > -static void irq_msi_compose_msg(struct irq_data *data, struct msi_msg *msg) > +/* > + * x86 PCI-MSI/HPET/DMAR related method. > + * Also can be used as arch specific method for virtio-mmio MSI. > + */ > +void irq_msi_compose_msg(struct irq_data *data, struct msi_msg *msg) > { > __irq_msi_compose_msg(irqd_cfg(data), msg); > } > @@ -166,6 +170,11 @@ static void irq_msi_update_msg(struct irq_data *irqd, > struct irq_cfg *cfg) > return ret; > } > > +struct irq_domain *arch_msi_root_irq_domain(void) > +{ > + return x86_vector_domain; > +} > + > /* > * IRQ Chip for MSI PCI/PCI-X/PCI-Express Devices, > * which implement the MSI or MSI-X Capability Structure. So there's a new non-static functions with no callers here, and a previously static irq_msi_compose_msg is not longer static. No callers so how does this help anyone? And how does this achieve the goal of enabling virtio mmio? > -- > 1.8.3.1