Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754258Ab2FLVHK (ORCPT ); Tue, 12 Jun 2012 17:07:10 -0400 Received: from mail-yx0-f174.google.com ([209.85.213.174]:50906 "EHLO mail-yx0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752179Ab2FLVHH convert rfc822-to-8bit (ORCPT ); Tue, 12 Jun 2012 17:07:07 -0400 MIME-Version: 1.0 Date: Tue, 12 Jun 2012 23:07:05 +0200 X-Google-Sender-Auth: efssU_RljtY9xf4XICtoyqZorSc Message-ID: Subject: asm/kvm_para.h from asm-generic (was: Re: linux-next: triage for April 19, 2012) From: Geert Uytterhoeven To: linux-kbuild , Avi Kivity Cc: Paul Gortmaker , linux-next@vger.kernel.org, linux-kernel@vger.kernel.org, "Linux/m68k" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4597 Lines: 129 On Wed, May 30, 2012 at 10:52 AM, Geert Uytterhoeven wrote: > On Mon, May 28, 2012 at 5:04 PM, Geert Uytterhoeven > wrote: >> On Mon, May 28, 2012 at 4:37 PM, Avi Kivity wrote: >>> On 05/25/2012 11:59 PM, Geert Uytterhoeven wrote: >>>> On Fri, Apr 20, 2012 at 4:00 AM, Paul Gortmaker >>>> wrote: >>>>> The parisc got borked by some kvm header shuffle it seems? >>>>> Now complaining about "file 'asm-generic/kvm_para.h' is not exported" >>>>> [ http://kisskb.ellerman.id.au/kisskb/buildresult/6137786/ ] >>>> >>>> Not only parisc. >>>> >>>> This breakage has now entered mainline: >>>> >>>> parisc deconfig http://kisskb.ellerman.id.au/kisskb/buildresult/6365677/ >>>> m68k allmodconfig: http://kisskb.ellerman.id.au/kisskb/buildresult/6365681/ >>> >>> >>> Does the following patch help? >> >> Thanks, that fixes it! >> >> Tested-by: Geert Uytterhoeven >> >>> From: Avi Kivity >>> Date: Mon, 28 May 2012 17:35:22 +0300 >>> Subject: [PATCH] KVM: Export asm-generic/kvm_para.h >>> >>> Prevents build failures on non-KVM archs. >>> >>> Signed-off-by: Avi Kivity >>> --- >>>  include/asm-generic/Kbuild |    1 + >>>  1 file changed, 1 insertion(+) >>> >>> diff --git a/include/asm-generic/Kbuild b/include/asm-generic/Kbuild >>> index 53f91b1..2c85a0f 100644 >>> --- a/include/asm-generic/Kbuild >>> +++ b/include/asm-generic/Kbuild >>> @@ -8,6 +8,7 @@ header-y += int-ll64.h >>>  header-y += ioctl.h >>>  header-y += ioctls.h >>>  header-y += ipcbuf.h >>> +header-y += kvm_para.h >>>  header-y += mman-common.h >>>  header-y += mman.h >>>  header-y += msgbuf.h > > I just noticed include/asm-generic/Kbuild.asm already had > > ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/asm/kvm_para.h \ >                  $(srctree)/include/asm-$(SRCARCH)/kvm_para.h),) > header-y  += kvm_para.h > endif > > but this doesn't seem to work. > > Kbuild people: which one is correct? Oops... After linux-next commit 2bbc89a8e9c652ee71c6c3b2e0679b7ecedb1a09 ("m68k: Use Kbuild logic to import asm-generic headers"), which does: - remove arch/m68k/include/asm/kvm_para.h, which just included the asm-generic version, - add "generic-y += kvm_para.h" to arch/m68k/include/asm/Kbuild, it fails again: $ make ARCH=m68k headers_check CHK include/linux/version.h INSTALL include/asm-generic (35 files) INSTALL include/linux (372 files) CHECK include/asm-generic (35 files) CHECK include/linux (372 files) usr/include/linux/kexec.h:49: userspace cannot reference function or variable defined in the kernel usr/include/linux/kvm_para.h:26: included file 'asm-m68k/kvm_para.h' is not exported usr/include/linux/soundcard.h:1054: userspace cannot reference function or variable defined in the kernel make[2]: *** [usr/include/linux/.check] Error 123 make[1]: *** [linux] Error 2 make: *** [headers_check] Error 2 $ After reverting Avi's fix (commit 7beb8e723c8d7da7decbbe217b79525aef73fccb. ("KVM: Export asm-generic/kvm_para.h")) it works again. Note that it now _removes_ kvm_para.h: $ make ARCH=m68k headers_check CHK include/linux/version.h REMOVE kvm_para.h INSTALL include/asm-generic (34 files) REMOVE kvm_para.h INSTALL include/linux (371 files) CHECK include/asm-generic (34 files) CHECK include/linux (371 files) usr/include/linux/kexec.h:49: userspace cannot reference function or variable defined in the kernel usr/include/linux/soundcard.h:1054: userspace cannot reference function or variable defined in the kernel $ What's the proper way to get this working in both cases?? 1. arch has it's own asm/kvm_para.h (cfr. m68k and all other arches in mainline) 2. arch includes asm-generic/kvm_para.h via Kbuild logic (cfr. (only) m68k in -next) Or is this not possible, and should I create arch/m68k/include/asm/kvm_para.h again, like all other arches seem to do? Gr{oetje,eeting}s,                         Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.                                 -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/