Re: [PATCH v3 3/7] x86/hyper-v: reenlightenment notifications support

Vitaly Kuznetsov
2018-01-22T12:06:59Z

"Michael Kelley (EOSG)" <Michael.H.Kelley@microsoft.com> writes:

> On Fri, 19 Jan 2018, Thomas Gleixner wrote:
>
>> -----Original Message-----
>> From: Thomas Gleixner [mailto:tglx@linutronix.de]
>> Sent: Friday, January 19, 2018 11:48 PM
>> To: Vitaly Kuznetsov <vkuznets@redhat.com>
>> Cc: kbuild test robot <lkp@intel.com>; kbuild-all@01.org; kvm@vger.kernel.org;
>> x86@kernel.org; Stephen Hemminger <sthemmin@microsoft.com>; Radim Krčmář
>> <rkrcmar@redhat.com>; Haiyang Zhang <haiyangz@microsoft.com>; linux-
>> kernel@vger.kernel.org; devel@linuxdriverproject.org; Michael Kelley (EOSG)
>> <Michael.H.Kelley@microsoft.com>; Ingo Molnar <mingo@redhat.com>; Roman Kagan
>> <rkagan@virtuozzo.com>; Andy Lutomirski <luto@kernel.org>; H. Peter Anvin
>> <hpa@zytor.com>; Paolo Bonzini <pbonzini@redhat.com>; Mohammed Gamal
>> <mmorsy@redhat.com>
>> Subject: Re: [PATCH v3 3/7] x86/hyper-v: reenlightenment notifications support
>>
>> On Fri, 19 Jan 2018, Vitaly Kuznetsov wrote:
>> > kbuild test robot <lkp@intel.com> writes:
>> >
>> > > Hi Vitaly,
>> > >
>> > > Thank you for the patch! Perhaps something to improve:
>> > >
>> > > [auto build test WARNING on tip/auto-latest]
>> > > [also build test WARNING on v4.15-rc8 next-20180118]
>> > > [cannot apply to tip/x86/core kvm/linux-next]
>> > > [if your patch is applied to the wrong git tree, please drop us a note to help improve the
>> system]
>> > >
>> > > url:
>> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2F0day-
>> ci%2Flinux%2Fcommits%2FVitaly-Kuznetsov%2Fx86-kvm-hyperv-stable-clocksorce-for-L2-
>> guests-when-running-nested-KVM-on-Hyper-V%2F20180119-
>> 160814&data=02%7C01%7CMichael.H.Kelley%40microsoft.com%7Ce95c66107da6446826830
>> 8d55fda2c2b%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636520313062777623&s
>> data=kAXl3mLVUdJi%2BsB4Ub0fmUHQfl6NuUDjW%2FAY9%2BFLZE4%3D&reserved=0
>> > > config: x86_64-allmodconfig (attached as .config)
>> > > compiler: gcc-7 (Debian 7.2.0-12) 7.2.1 20171025
>> > > reproduce:
>> > > # save the attached .config to linux build tree
>> > > make ARCH=x86_64
>> > >
>> > > All warnings (new ones prefixed by >>):
>> > >
>> > > In file included from include/linux/kasan.h:17:0,
>> > > from include/linux/slab.h:129,
>> > > from include/linux/irq.h:26,
>> > > from arch/x86/include/asm/hardirq.h:6,
>> > > from include/linux/hardirq.h:9,
>> > > from include/linux/interrupt.h:13,
>> > > from arch/x86/include/asm/mshyperv.h:8,
>> > > from arch/x86//entry/vdso/vdso32/../vclock_gettime.c:20,
>> > > from arch/x86//entry/vdso/vdso32/vclock_gettime.c:33:
>> > > arch/x86/include/asm/pgtable.h: In function 'clone_pgd_range':
>> > > arch/x86/include/asm/pgtable.h:1129:9: error: implicit declaration of function
>> 'kernel_to_user_pgdp'; did you mean 'u64_to_user_ptr'? [-Werror=implicit-function-
>> declaration]
>> > > memcpy(kernel_to_user_pgdp(dst), kernel_to_user_pgdp(src),
>> > > ^~~~~~~~~~~~~~~~~~~
>> >
>> > Sorry but I'm failing to see how this (and all the rest) is related to
>> > my patch ...
>>
>> You added '#include <linux/interrupt.h>' to mshyperv.h which is included in
>> vclock_gettime.c and pulls in other stuff which fails to expand....
>
> Is the declaration of hyperv_reenlightenment_intr() even needed in
> mshyperv.h? The '#include <linux/interrupt.h>' is there for the __irq_entry
> annotation on that declaration. There's a declaration of the parallel (and
> unannotated) hyperv_vector_handler(), but that looks like a fossil that
> isn't needed either.
>

True,

the only need for the declaration in mshyperv.h is to silence "warning:
no previous prototype for ‘hyperv_reenlightenment_intr’"; I'm not sure
if this actually needs fixing.

--
Vitaly