24 Mar, 2013

1 commit


18 Mar, 2013

1 commit


11 Mar, 2013

1 commit


04 Mar, 2013

1 commit


28 Feb, 2013

1 commit

  • Pull kbuild changes from Michal Marek:

    - Alias generation in modpost is cross-compile safe.

    - kernel/timeconst.h is now generated using a bc script instead of
    perl.

    - scripts/link-vmlinux.sh now works with an alternative
    $KCONFIG_CONFIG.

    - destination-y for exported headers is supported in Kbuild files
    again.

    - depmod is called with -P $CONFIG_SYMBOL_PREFIX on architectures that
    need it.

    - CONFIG_DEBUG_INFO_REDUCED disables var-tracking

    - scripts/setlocalversion works with too much translated locales ;)

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kbuild: Fix reading of .config in link-vmlinux.sh
    kbuild: Unset language specific variables in setlocalversion script
    Kbuild: Disable var tracking with CONFIG_DEBUG_INFO_REDUCED
    depmod: pass -P $CONFIG_SYMBOL_PREFIX
    kbuild: Fix destination-y for installed headers
    scripts/link-vmlinux.sh: source variables from KCONFIG_CONFIG
    kernel: Replace timeconst.pl with a bc script
    mod/file2alias: make modalias generation safe for cross compiling

    Linus Torvalds
     

26 Feb, 2013

1 commit

  • Pull module update from Rusty Russell:
    "The sweeping change is to make add_taint() explicitly indicate whether
    to disable lockdep, but it's a mechanical change."

    * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
    MODSIGN: Add option to not sign modules during modules_install
    MODSIGN: Add -s option to sign-file
    MODSIGN: Specify the hash algorithm on sign-file command line
    MODSIGN: Simplify Makefile with a Kconfig helper
    module: clean up load_module a little more.
    modpost: Ignore ARC specific non-alloc sections
    module: constify within_module_*
    taint: add explicit flag to show whether lock dep is still OK.
    module: printk message when module signature fail taints kernel.

    Linus Torvalds
     

22 Feb, 2013

2 commits

  • Newer gcc enables the var-tracking pass with -g to keep track which
    registers contain which variables. This is one of the slower passes in gcc.

    With reduced debug info (aimed at objdump -S, but not using a full debugger)
    we don't need this fine grained tracking. But it was still enabled
    because -g was enabled. Disable it explicitely for DEBUG_INFO_REDUCED.

    On my 8T workstation this gives me about a 12 second gain in building
    a reasonable kernel config (2min16 vs 2min28) with DEBUG_INFO_REDUCED.
    With full DEBUG_INFO it takes 2min46

    The actual improvement in user time taken by the compiler is much higher
    (all CPU combined user time 15min5s vs 16m30 before)
    but the usual amdahl bottleneck on the linker prevents more speedup.
    It still saves some more energy and keeps cycles for other things.

    Signed-off-by: Andi Kleen
    Signed-off-by: Michal Marek

    Andi Kleen
     
  • On architectures which have symbol prefixes, depmod emits lots of
    warnings like this:

    WARNING: $module.ko needs unknown symbol $symbol

    This is because depmod isn't being passed the -P
    arguments to specify the symbol prefix to ignore. This option is
    included since the 3.13 release of module-init-tools.

    Update scripts/depmod.sh to take extra arguments for the symbol prefix
    (required but may be empty), and update the main Makefile to always pass
    "$(CONFIG_SYMBOL_PREFIX)" to scripts/depmod.sh.

    If the provided symbol prefix is non-empty, scripts/depmod.sh checks if
    depmod --version reports module-init-tools with a version number < 3.13
    otherwise it appends -P $SYMBOL_PREFIX to the depmod command line.

    Signed-off-by: James Hogan
    Cc: Michal Marek
    Cc: linux-kbuild@vger.kernel.org
    Cc: Mike Frysinger
    Cc: Yoshinori Sato
    Cc: uclinux-dist-devel@blackfin.uclinux.org
    Signed-off-by: Michal Marek

    James Hogan
     

20 Feb, 2013

1 commit

  • Pull two x86 kernel build changes from Ingo Molnar:
    "The first change modifies how 'make oldconfig' works on cross-bitness
    situations on x86. It was felt the new behavior of preserving the
    bitness of the .config is more logical. This is a leftover of the
    merge.

    The second change eliminates a Perl warning. (There's another, more
    complete fix resulting of this warning fix, which second fix in flight
    to you via the kbuild tree, which will remove the timeconst.pl script
    altogether.)"

    * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    timeconst.pl: Eliminate Perl warning
    x86: Default to ARCH=x86 to avoid overriding CONFIG_64BIT

    Linus Torvalds
     

19 Feb, 2013

1 commit


09 Feb, 2013

1 commit


01 Feb, 2013

1 commit


26 Jan, 2013

1 commit


25 Jan, 2013

3 commits


23 Jan, 2013

1 commit

  • By popular demand, arch/aarch64 is now known as arch/arm64. However,
    uname -m (and indeed the GNU triplet) still use aarch64 as the machine
    string.

    This patch fixes native builds of both the kernel and perf tools by
    updating the relevant Makefiles to munge the output of uname -m and
    set the ARCH variable appropriately.

    Cc:
    Signed-off-by: Will Deacon
    Signed-off-by: Catalin Marinas

    Will Deacon
     

18 Jan, 2013

1 commit


10 Jan, 2013

1 commit


03 Jan, 2013

1 commit


22 Dec, 2012

1 commit


21 Dec, 2012

2 commits

  • It is easy to waste a bunch of time when one takes a 32-bit .config
    from a test machine and try to build it on a faster 64-bit system, and
    its existing setting of CONFIG_64BIT=n gets *changed* to match the
    build host. Similarly, if one has an existing build tree it is easy
    to trash an entire build tree that way.

    This is because the default setting for $ARCH when discovered from
    'uname' is one of the legacy pre-x86-merge values (i386 or x86_64),
    which effectively force the setting of CONFIG_64BIT to match. We should
    default to ARCH=x86 instead, finally completing the merge that we
    started so long ago.

    This patch preserves the behaviour of the legacy ARCH settings for commands
    such as:

    make ARCH=x86_64 randconfig
    make ARCH=i386 randconfig

    ... since making the value of CONFIG_64BIT actually random in that situation
    is not desirable.

    In time, perhaps we can retire this legacy use of the old ARCH= values.
    We already have a way to override values for *any* config option, using
    $KCONFIG_ALLCONFIG, so it could be argued that we don't necessarily need
    to keep ARCH={i386,x86_64} around as a special case just for overriding
    CONFIG_64BIT.

    We'd probably at least want to add a way to override config options from
    the command line ('make CONFIG_FOO=y oldconfig') before we talk about doing
    that though.

    Signed-off-by: David Woodhouse
    Link: http://lkml.kernel.org/r/1356040315.3198.51.camel@shinybook.infradead.org
    Signed-off-by: H. Peter Anvin

    David Woodhouse
     
  • Pull kbuild changes from Michal Marek:
    "The kbuild changes are minimal this time:

    - scripts/pnmlogo fix for some newer format

    - minor top-level Makefile cleanup

    - fix for a v3.5 regression with make clean M="

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kbuild: Do not remove vmlinux when cleaning external module
    scripts/pnmtologo: fix for plain PBM
    kbuild: Remove reference to uninitialised variable

    Linus Torvalds
     

19 Dec, 2012

1 commit

  • Pull module update from Rusty Russell:
    "Nothing all that exciting; a new module-from-fd syscall for those who
    want to verify the source of the module (ChromeOS) and/or use standard
    IMA on it or other security hooks."

    * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
    MODSIGN: Fix kbuild output when using default extra_certificates
    MODSIGN: Avoid using .incbin in C source
    modules: don't hand 0 to vmalloc.
    module: Remove a extra null character at the top of module->strtab.
    ASN.1: Use the ASN1_LONG_TAG and ASN1_INDEFINITE_LENGTH constants
    ASN.1: Define indefinite length marker constant
    moduleparam: use __UNIQUE_ID()
    __UNIQUE_ID()
    MODSIGN: Add modules_sign make target
    powerpc: add finit_module syscall.
    ima: support new kernel module syscall
    add finit_module syscall to asm-generic
    ARM: add finit_module syscall to ARM
    security: introduce kernel_module_from_file hook
    module: add flags arg to sys_finit_module()
    module: add syscall to load module from fd

    Linus Torvalds
     

14 Dec, 2012

1 commit

  • If CONFIG_MODULE_SIG is set, and 'make modules_sign' is called then this
    patch will cause the modules to get a signature appended. The make target
    is intended to be run after 'make modules_install', and will modify the
    modules in-place in the installed location. It can be used to produce
    signed modules after they have been processed by distribution build
    scripts.

    Signed-off-by: Josh Boyer
    Signed-off-by: Rusty Russell (minor typo fix)

    Josh Boyer
     

11 Dec, 2012

1 commit


09 Dec, 2012

1 commit

  • Since commit 1f2bfbd00e466ff3489b2ca5cc75b1cccd14c123 "kbuild:
    link of vmlinux moved to a script" make clean with M=
    argument (so cleaning external module) removes vmlinux,
    System.map and couple of other files from the *main* kernel
    build directory! This not what was happening before and almost
    certainly not what one would expect.

    This patch moves makes the clean target of the script called
    only when !KBUILD_EXTMOD.

    Signed-off-by: Pawel Moll
    Cc: stable@vger.kernel.org [v3.5+]
    Signed-off-by: Michal Marek

    Pawel Moll
     

04 Dec, 2012

1 commit


02 Dec, 2012

1 commit

  • Pull perf fixes from Ingo Molnar:
    "This is mostly about unbreaking architectures that took the UAPI
    changes in the v3.7 cycle, plus misc fixes."

    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    perf kvm: Fix building perf kvm on non x86 arches
    perf kvm: Rename perf_kvm to perf_kvm_stat
    perf: Make perf build for x86 with UAPI disintegration applied
    perf powerpc: Use uapi/unistd.h to fix build error
    tools: Pass the target in descend
    tools: Honour the O= flag when tool build called from a higher Makefile
    tools: Define a Makefile function to do subdir processing
    x86: Export asm/{svm.h,vmx.h,perf_regs.h}
    perf tools: Fix strbuf_addf() when the buffer needs to grow
    perf header: Fix numa topology printing
    perf, powerpc: Fix hw breakpoints returning -ENOSPC

    Linus Torvalds
     

26 Nov, 2012

1 commit


20 Nov, 2012

2 commits

  • Verbose output variable is unnecessary because the command's echo is
    already surpressed. Additionally because the block defines skip-makefile
    the variable Q is not defined within the makefile, which can cause
    problems if Q is defined in the users environment.

    Signed-off-by: Charles Keepax
    Signed-off-by: Michal Marek

    Charles Keepax
     
  • Honour the O= flag that was passed to a higher level Makefile and then passed
    down as part of a tool build.

    To make this work, the top-level Makefile passes the original O= flag and
    subdir=tools to the tools/Makefile, and that in turn passes
    subdir=$(O)/$(subdir)/foodir when building tool foo in directory
    $(O)/$(subdir)/foodir (where the intervening slashes aren't added if an
    element is missing).

    For example, take perf. This is found in tools/perf/. Assume we're building
    into directory ~/zebra/, so we pass O=~/zebra to make. Dependening on where
    we run the build from, we see:

    make run in dir $(OUTPUT) dir
    ======================= ==================
    linux ~/zebra/tools/perf/
    linux/tools ~/zebra/perf/
    linux/tools/perf ~/zebra/

    and if O= is not set, we get:

    make run in dir $(OUTPUT) dir
    ======================= ==================
    linux linux/tools/perf/
    linux/tools linux/tools/perf/
    linux/tools/perf linux/tools/perf/

    The output directories are created by the descend function if they don't
    already exist.

    Signed-off-by: David Howells
    Cc: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Linus Torvalds
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Thomas Gleixner
    Link: http://lkml.kernel.org/r/1378.1352379110@warthog.procyon.org.uk
    Signed-off-by: Arnaldo Carvalho de Melo

    David Howells
     

17 Nov, 2012

1 commit


11 Nov, 2012

1 commit


05 Nov, 2012

1 commit


29 Oct, 2012

1 commit


21 Oct, 2012

1 commit


20 Oct, 2012

1 commit

  • Turn sign-file into perl and merge in x509keyid. The latter doesn't
    need to be a separate script as it doesn't actually need to work out the
    SHA1 sum of the X.509 certificate itself, since it can get that from the
    X.509 certificate.

    Signed-off-by: David Howells
    Signed-off-by: Linus Torvalds

    David Howells
     

19 Oct, 2012

1 commit

  • Linus deleted the old code and put signing on the install command,
    I fixed it to extract the keyid and signer-name within sign-file
    and cleaned up that script now it always signs in-place.

    Some enthusiast should convert sign-key to perl and pull
    x509keyid into it.

    Signed-off-by: Rusty Russell
    Signed-off-by: Linus Torvalds

    Rusty Russell
     

17 Oct, 2012

1 commit