07 Jul, 2016

1 commit

  • When a header file is removed from generic-y (often accompanied by the
    addition of an arch specific header), the generated wrapper file will
    persist, and in some cases may still take precedence over the new arch
    header.

    For example commit f1fe2d21f4e1 ("MIPS: Add definitions for extended
    context") removed ucontext.h from generic-y in arch/mips/include/asm/,
    and added an arch/mips/include/uapi/asm/ucontext.h. The continued use of
    the wrapper when reusing a dirty build tree resulted in build failures
    in arch/mips/kernel/signal.c:

    arch/mips/kernel/signal.c: In function ‘sc_to_extcontext’:
    arch/mips/kernel/signal.c:142:12: error: ‘struct ucontext’ has no member named ‘uc_extcontext’
    return &uc->uc_extcontext;
    ^
    Fix by detecting and removing wrapper headers in generated header
    directories that do not correspond to a filename in generic-y, genhdr-y,
    or the newly introduced generated-y.

    Reported-by: Jacek Anaszewski
    Reported-by: Hauke Mehrtens
    Reported-by: Heinrich Schuchardt
    Signed-off-by: James Hogan
    Acked-by: Arnd Bergmann
    Acked-by: Florian Fainelli
    Cc: linux-arch@vger.kernel.org
    Cc: linux-mips@linux-mips.org
    Cc: Paul Burton
    Cc: linux-kbuild@vger.kernel.org
    Cc: Ralf Baechle
    Cc: Michal Marek
    Link: http://lkml.kernel.org/r/1466808144-23209-3-git-send-email-james.hogan@imgtec.com
    Signed-off-by: Thomas Gleixner

    James Hogan
     

10 Jun, 2014

1 commit


17 Oct, 2012

1 commit


09 Jun, 2011

1 commit


03 May, 2011

1 commit


29 Apr, 2011

1 commit

  • There is an increasing amount of header files
    shared between individual architectures in asm-generic.
    To avoid a lot of dummy wrapper files that just
    include the corresponding file in asm-generic provide
    some basic support in kbuild for this.

    With the following patch an architecture can maintain
    a list of files in the file arch/$(ARCH)/include/asm/Kbuild

    To use a generic file just add:

    generic-y +=

    For each file listed kbuild will generate the necessary
    wrapper in arch/$(ARCH)/include/generated/asm.

    When installing userspace headers a wrapper is likewise created.

    The original inspiration for this came from the unicore32
    patchset - although a different method is used.

    The patch includes several improvements from Arnd Bergmann.
    Michael Marek contributed Makefile.asm-generic.

    Remis Baima did an intial implementation along to achive
    the same - see https://patchwork.kernel.org/patch/13352/

    Signed-off-by: Sam Ravnborg
    Acked-by: Guan Xuetao
    Tested-by: Guan Xuetao
    Acked-by: Arnd Bergmann
    Cc: Remis Lima Baima
    Signed-off-by: Michal Marek

    Sam Ravnborg