Re: x86/mshyperv: Remove unneeded includes from mshyperv.h

From: Thomas Gleixner
Date: Fri Jun 23 2017 - 06:00:17 EST


On Fri, 23 Jun 2017, Thomas Gleixner wrote:

> A recent commit included linux/slab.h in linux/irq.h. This breaks the build
> of vdso32 on a 64bit kernel.
>
> The reason is that linux/irq.h gets included into the vdso code via
> linux/interrupt.h which is included from asm/mshyperv.h. That makes the
> 32bit vdso compile fail, because slab.h includes the pgtable headers for
> 64bit on a 64bit build.
>
> Neither linux/clocksource.h nor linux/interrupt.h are needed in the
> mshyperv.h header file itself.
>
> Remove the includes and unbreak the build.
>
> Fixes: dee863b571b0 ("hv: export current Hyper-V clocksource")
> Reported-by: Ingo Molnar <mingo@xxxxxxxxxx>
> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> ---
>
> diff --git a/arch/x86/include/asm/mshyperv.h b/arch/x86/include/asm/mshyperv.h
> index fba100713924..2f4acbdbfc51 100644
> --- a/arch/x86/include/asm/mshyperv.h
> +++ b/arch/x86/include/asm/mshyperv.h
> @@ -2,8 +2,6 @@
> #define _ASM_X86_MSHYPER_H
>
> #include <linux/types.h>
> -#include <linux/interrupt.h>
> -#include <linux/clocksource.h>
> #include <asm/hyperv.h>

Bah. this needs the following delta fix:

--- a/arch/x86/include/asm/mshyperv.h
+++ b/arch/x86/include/asm/mshyperv.h
@@ -2,6 +2,7 @@
#define _ASM_X86_MSHYPER_H

#include <linux/types.h>
+#include <linux/atomic.h>
#include <asm/hyperv.h>

/*