Re: [PATCH] x86/vdso: Fix build when CONFIG_KVM_GUEST is not set

From: Borislav Petkov
Date: Wed Dec 23 2015 - 05:32:44 EST


On Tue, Dec 22, 2015 at 07:50:51PM +0100, Borislav Petkov wrote:
> From: Borislav Petkov <bp@xxxxxxx>
>
> Doing randbuilds fails like this here at link time:
>
> arch/x86/built-in.o: In function `arch_setup_additional_pages':
> /home/boris/kernel/linux/arch/x86/entry/vdso/vma.c:174: undefined reference to `pvclock_pvti_cpu0_va'
> make: *** [vmlinux] Error 1
>
> This is because pvclock_pvti_cpu0_va() is defined in
> arch/x86/kernel/kvmclock.c as an accessor to the private hv_clock thing
> but if CONFIG_KVM_GUEST is not set, we don't have that function to link
> to.
>
> So add CONFIG_KVM_GUEST to the ifdeffery.
>
> Signed-off-by: Borislav Petkov <bp@xxxxxxx>
> ---
> arch/x86/include/asm/pvclock.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/x86/include/asm/pvclock.h b/arch/x86/include/asm/pvclock.h
> index 66df22b2e0c9..1af6bee77fb0 100644
> --- a/arch/x86/include/asm/pvclock.h
> +++ b/arch/x86/include/asm/pvclock.h
> @@ -4,7 +4,7 @@
> #include <linux/clocksource.h>
> #include <asm/pvclock-abi.h>
>
> -#ifdef CONFIG_PARAVIRT_CLOCK
> +#if defined(CONFIG_PARAVIRT_CLOCK) && defined(CONFIG_KVM_GUEST)
> extern struct pvclock_vsyscall_time_info *pvclock_pvti_cpu0_va(void);
> #else
> static inline struct pvclock_vsyscall_time_info *pvclock_pvti_cpu0_va(void)
> --

Ok, ignore this one for now - we need to sort out the tip:x86/vdso mess
first and in particular:

677a73a9aa54 ("x86/kvm: On KVM re-enable (e.g. after suspend), update clocks")

--
Regards/Gruss,
Boris.

ECO tip #101: Trim your mails when you reply.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/