Re: [PATCH 1/1] X86/Hyper-V:: Fix the circular dependency in IPI enlightenment.

From: Ingo Molnar
Date: Thu Jul 05 2018 - 11:38:31 EST



* KY Srinivasan <kys@xxxxxxxxxxxxx> wrote:

>
>
> > -----Original Message-----
> > From: Ingo Molnar <mingo.kernel.org@xxxxxxxxx> On Behalf Of Ingo Molnar
> > Sent: Wednesday, July 4, 2018 9:11 AM
> > To: KY Srinivasan <kys@xxxxxxxxxxxxx>
> > Cc: x86@xxxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx; linux-
> > kernel@xxxxxxxxxxxxxxx; devel@xxxxxxxxxxxxxxxxxxxxxx; olaf@xxxxxxxxx;
> > apw@xxxxxxxxxxxxx; jasowang@xxxxxxxxxx; tglx@xxxxxxxxxxxxx;
> > hpa@xxxxxxxxx; Stephen Hemminger <sthemmin@xxxxxxxxxxxxx>; Michael
> > Kelley (EOSG) <Michael.H.Kelley@xxxxxxxxxxxxx>; vkuznets@xxxxxxxxxx
> > Subject: Re: [PATCH 1/1] X86/Hyper-V:: Fix the circular dependency in IPI
> > enlightenment.
> >
> >
> > * kys@xxxxxxxxxxxxxxxxx <kys@xxxxxxxxxxxxxxxxx> wrote:
> >
> > > From: "K. Y. Srinivasan" <kys@xxxxxxxxxxxxx>
> > >
> > > The IPI hypercalls depend on being able to map the Linux notion of CPU ID
> > > to the hypervisor's notion of the CPU ID. The array hv_vp_index[] provides
> > > this mapping. Code for populating this array depends on the IPI
> > functionality.
> > > Break this circular dependency.
> > >
> > > Fixes: 68bb7bfb7985 ("X86/Hyper-V: Enable IPI enlightenments")
> > >
> > > Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
> > > Tested-by: Michael Kelley <mikelley@xxxxxxxxxxxxx>
> > > ---
> > > arch/x86/hyperv/hv_apic.c | 5 +++++
> > > arch/x86/hyperv/hv_init.c | 5 ++++-
> > > arch/x86/include/asm/mshyperv.h | 2 ++
> > > 3 files changed, 11 insertions(+), 1 deletion(-)
> >
> > Ugh, this patch wasn't even build tested, on 64-bit allyes/allmodconfig:
> >
> > arch/x86/hyperv/hv_apic.c: In function â__send_ipi_maskâ:
> > arch/x86/hyperv/hv_apic.c:171:4: error: label âipi_mask_doneâ used but not
> > defined
> > scripts/Makefile.build:317: recipe for target 'arch/x86/hyperv/hv_apic.o'
> > failed
> > make[2]: *** [arch/x86/hyperv/hv_apic.o] Error 1
>
> Sorry Ingo. I had a clean build on the linux-next tree (tag: next-20180702) that
> I used to base this patch. What was the tree you applied the patch to?

If you look at the error message, it won't build against *any* tree, because
there's no 'ipi_mask_done' label either in the kernel source, or introduced
by the patch.

So whatever tree you used it on, if you build arch/x86/hyperv/hv_apic.o it should
be broken.

Thanks,

Ingo