KVM uses srcu structures because of which CONFIG_KVM selects CONFIG_SRCU. In asm-offsets.c, we are including kvm_host.h unconditionally even though CONFIG_KVM is not enabled because of which we get errors like follows: In file included from arch/s390/kernel/asm-offsets.c:10:0: >> include/linux/kvm_host.h:363:21: error: field 'srcu' has incomplete type struct srcu_struct srcu; ^ >> include/linux/kvm_host.h:364:21: error: field 'irq_srcu' has incomplete type struct srcu_struct irq_srcu; ^ make[2]: *** [arch/s390/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [sub-make] Error 2 This patch fixes these by including kvm_host.h conditionally on CONFIG_KVM. Signed-off-by: Pranith Kumar <bobby.prani@xxxxxxxxx> --- arch/s390/kernel/asm-offsets.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/s390/kernel/asm-offsets.c b/arch/s390/kernel/asm-offsets.c index ef279a1..055334d 100644 --- a/arch/s390/kernel/asm-offsets.c +++ b/arch/s390/kernel/asm-offsets.c @@ -7,12 +7,15 @@ #define ASM_OFFSETS_C #include <linux/kbuild.h> -#include <linux/kvm_host.h> #include <linux/sched.h> #include <asm/idle.h> #include <asm/vdso.h> #include <asm/pgtable.h> +#ifdef CONFIG_KVM +#include <linux/kvm_host.h> +#endif + /* * Make sure that the compiler is new enough. We want a compiler that * is known to work with the "Q" assembler constraint. @@ -182,8 +185,10 @@ int main(void) DEFINE(__LC_PGM_TDB, offsetof(struct _lowcore, pgm_tdb)); DEFINE(__THREAD_trap_tdb, offsetof(struct task_struct, thread.trap_tdb)); DEFINE(__GMAP_ASCE, offsetof(struct gmap, asce)); +#ifdef CONFIG_KVM DEFINE(__SIE_PROG0C, offsetof(struct kvm_s390_sie_block, prog0c)); DEFINE(__SIE_PROG20, offsetof(struct kvm_s390_sie_block, prog20)); +#endif /* CONFIG_KVM */ #endif /* CONFIG_32BIT */ return 0; } -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html