19 Apr, 2012

1 commit

  • The BCJ filters were meant to be enabled already on these
    archs, but the xz_wrap.sh script was buggy. Enabling the
    filters should give smaller kernel images.

    xz_wrap.sh will now use $SRCARCH instead of $ARCH to detect
    the architecture. That way it doesn't need to care about the
    subarchs (like i386 vs. x86_64) since the BCJ filters don't
    care either.

    Signed-off-by: Lasse Collin
    Acked-by: Jan Beulich
    Acked-by: H. Peter Anvin
    Signed-off-by: Linus Torvalds

    Lasse Collin
     

17 Apr, 2012

1 commit


13 Apr, 2012

2 commits


10 Apr, 2012

1 commit

  • Commit f02e8a6596b7 ("module: Sort exported symbols") sorts symbols
    placing each of them in its own elf section. This sorting and merging
    into the canonical sections are done by the linker.

    Unfortunately modpost to generate Module.symvers file parses vmlinux.o
    (which is not linked yet) and all modules object files (which aren't
    linked yet). These aren't sanitized by the linker yet. That breaks
    modpost that can't detect license properly for modules.

    This patch makes modpost aware of the new exported symbols structure.

    [ This above is a slightly corrected version of the explanation of the
    problem, copied from commit 62a2635610db ("modpost: Fix modpost's
    license checking V3"). That commit fixed the problem for module
    object files, but not for vmlinux.o. This patch fixes modpost for
    vmlinux.o. ]

    Signed-off-by: Frank Rowand
    Signed-off-by: Alessio Igor Bogani
    Signed-off-by: Linus Torvalds

    Frank Rowand
     

06 Apr, 2012

2 commits

  • Merge batch of fixes from Andrew Morton:
    "The simple_open() cleanup was held back while I wanted for laggards to
    merge things.

    I still need to send a few checkpoint/restore patches. I've been
    wobbly about merging them because I'm wobbly about the overall
    prospects for success of the project. But after speaking with Pavel
    at the LSF conference, it sounds like they're further toward
    completion than I feared - apparently davem is at the "has stopped
    complaining" stage regarding the net changes. So I need to go back
    and re-review those patchs and their (lengthy) discussion."

    * emailed from Andrew Morton : (16 patches)
    memcg swap: use mem_cgroup_uncharge_swap fix
    backlight: add driver for DA9052/53 PMIC v1
    C6X: use set_current_blocked() and block_sigmask()
    MAINTAINERS: add entry for sparse checker
    MAINTAINERS: fix REMOTEPROC F: typo
    alpha: use set_current_blocked() and block_sigmask()
    simple_open: automatically convert to simple_open()
    scripts/coccinelle/api/simple_open.cocci: semantic patch for simple_open()
    libfs: add simple_open()
    hugetlbfs: remove unregister_filesystem() when initializing module
    drivers/rtc/rtc-88pm860x.c: fix rtc irq enable callback
    fs/xattr.c:setxattr(): improve handling of allocation failures
    fs/xattr.c:listxattr(): fall back to vmalloc() if kmalloc() failed
    fs/xattr.c: suppress page allocation failure warnings from sys_listxattr()
    sysrq: use SEND_SIG_FORCED instead of force_sig()
    proc: fix mount -t proc -o AAA

    Linus Torvalds
     
  • Find instances of an open-coded simple_open() and replace them with
    calls to simple_open().

    Signed-off-by: Julia Lawall
    Reported-by: Stephen Boyd
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Julia Lawall
     

02 Apr, 2012

1 commit

  • When $remove_structs is empty a test for empty string will turn
    into test -n with no arguments meaning true. Add quotes so an
    empty string is tested and so that make cscope works again.

    Reported-and-tested-by: Jike Song
    Reported-by: Prarit Bhargava
    Acked-by: Yang Bai
    Signed-off-by: Stephen Boyd
    Signed-off-by: Michal Marek

    Stephen Boyd
     

31 Mar, 2012

3 commits

  • Pull kbuild changes from Michal Marek:
    - Unification of cmd_uimage among archs that use it
    - make headers_check tries harder before reporting a missing
    include
    - kbuild portability fix for shells that do not support echo -e
    - make clean descends into samples/
    - setlocalversion grep fix
    - modpost typo fix
    - dtc warnings fix

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    setlocalversion: Use "grep -q" instead of piping output to "read dummy"
    modpost: fix ALL_INIT_DATA_SECTIONS
    Kbuild: centralize MKIMAGE and cmd_uimage definitions
    headers_check: recursively search for linux/types.h inclusion
    scripts/Kbuild.include: Fix portability problem of "echo -e"
    scripts: dtc: fix compile warnings
    kbuild: clean up samples directory
    kbuild: disable -Wmissing-field-initializers for W=1

    Linus Torvalds
     
  • Pull non-critical part of kbuild from Michal Marek:
    - New semantic patches, make coccicheck M= fix
    - make gtags speedup
    - make tags/TAGS always removes struct forward declarations
    - make deb-pkg fixes (some patches are still pending, I know)
    - scripts/patch-kernel fix from the last user of this script ;)

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    scripts/patch-kernel: digest kernel.org hosted .xz patches
    scripts/coccinelle/api/ptr_ret.cocci: semantic patch for ptr_err
    scripts: refactor remove structure forward declarations
    kbuild: incremental tags update for GNU Global
    coccinelle: semantic patch for bool issues
    coccinelle: semantic patch to check for PTR_ERR after reassignment
    coccinelle: semantic patch converting 0 test to null test
    coccinelle: semantic patch for missing iounmap
    coccinelle: semantic patch for missing clk_put
    kbuild: Fix out-of-tree build for 'make deb-pkg'
    kbuild: Only build linux-image package for UML
    kbuild: Fix link to headers in 'make deb-pkg'
    coccicheck: change handling of C={1,2} when M= is set

    Linus Torvalds
     
  • Pull kconfig bits from Michal Marek:
    "There is one fix for make oldconfig by Arnaud and updates to the
    merge_config.sh tool."

    * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    merge_config.sh: Add option to display redundant configs
    merge_config.sh: Set execute bit
    merge_config.sh: Use the first file as the initial config
    kconfig: fix new choices being skipped upon config update

    Linus Torvalds
     

30 Mar, 2012

4 commits

  • kernel.org is hosting patches and kernel compressed with xz (lzma2+).
    Allow scripts/patch-kernel to decompress these files.

    Signed-off-by: Shawn Landden
    Signed-off-by: Michal Marek

    Shawn Landden
     
  • Provide a -r option to display when fragments contain redundant
    options. This is really useful when breaking apart a config into
    fragments, as well as cleaning up older fragments.

    Signed-off-by: John Stultz
    Acked-by: Darren Hart
    Acked-by: Bruce Ashfield
    Signed-off-by: Michal Marek

    John Stultz
     
  • Somehow the merge_config.sh script didn't get its execute bit
    set when it was merged. Fix this.

    Signed-off-by: John Stultz
    Acked-by: Darren Hart
    Acked-by: Bruce Ashfield
    Signed-off-by: Michal Marek

    John Stultz
     
  • Pull more ARM updates from Russell King.

    This got a fair number of conflicts with the split, but
    also with some other sparse-irq and header file include cleanups. They
    all looked pretty trivial, though.

    * 'for-linus' of git://git.linaro.org/people/rmk/linux-arm: (59 commits)
    ARM: fix Kconfig warning for HAVE_BPF_JIT
    ARM: 7361/1: provide XIP_VIRT_ADDR for no-MMU builds
    ARM: 7349/1: integrator: convert to sparse irqs
    ARM: 7259/3: net: JIT compiler for packet filters
    ARM: 7334/1: add jump label support
    ARM: 7333/2: jump label: detect %c support for ARM
    ARM: 7338/1: add support for early console output via semihosting
    ARM: use set_current_blocked() and block_sigmask()
    ARM: exec: remove redundant set_fs(USER_DS)
    ARM: 7332/1: extract out code patch function from kprobes
    ARM: 7331/1: extract out insn generation code from ftrace
    ARM: 7330/1: ftrace: use canonical Thumb-2 wide instruction format
    ARM: 7351/1: ftrace: remove useless memory checks
    ARM: 7316/1: kexec: EOI active and mask all interrupts in kexec crash path
    ARM: Versatile Express: add NO_IOPORT
    ARM: get rid of asm/irq.h in asm/prom.h
    ARM: 7319/1: Print debug info for SIGBUS in user faults
    ARM: 7318/1: gic: refactor irq_start assignment
    ARM: 7317/1: irq: avoid NULL check in for_each_irq_desc loop
    ARM: 7315/1: perf: add support for the Cortex-A7 PMU
    ...

    Linus Torvalds
     

27 Mar, 2012

4 commits


26 Mar, 2012

3 commits

  • All ARCHs have the same definition of MKIMAGE. Move it to Makefile.lib
    to avoid duplication.

    All ARCHs have similar definitions of cmd_uimage. Place a sufficiently
    parameterized version in Makefile.lib to avoid duplication.

    Signed-off-by: Stephen Warren
    Acked-by: Nicolas Pitre
    Tested-by: Mike Frysinger [Blackfin]
    Tested-by: Michal Simek [Microblaze]
    Tested-by: Guan Xuetao [unicore32]
    Signed-off-by: Michal Marek

    Stephen Warren
     
  • GNU gtags support '-i' for updating tag files incrementally.
    It runs more quickly than generating new tags after kernel source update.

    Signed-off-by: Jianbin Kang
    Signed-off-by: Michal Marek

    Jianbin Kang
     
  • headers_check.pl currently emits some spurious warnings, especially for
    the drm headers, about using __[us]{8,16,32,64} types without including
    linux/types.h. Recursively search for types.h inclusion, avoiding
    circular references.

    Signed-off-by: Bobby Powers
    Cc: Sam Ravnborg
    Cc: Dave Airlie
    Signed-off-by: Andrew Morton
    Signed-off-by: Michal Marek

    Bobby Powers
     

25 Mar, 2012

3 commits

  • "echo -e" is a GNU extension. When cross-compiling the kernel on a
    BSD-like operating system (Mac OS X in my case), this doesn't work.

    One could install a GNU version of echo, put that in the $PATH before
    the system echo and use "/usr/bin/env echo", but the solution with
    printf is simpler.

    Since it is no disadvantage on Linux, I hope that gets accepted even if
    cross-compiling the Linux kernel on another Unix operating system is
    quite a rare use case.

    Signed-off-by: Bernhard Walle
    Andreas Bießmann
    Signed-off-by: Michal Marek

    Bernhard Walle
     
  • Take the first config fragment and use it verbatim as the initial config
    set. This avoids running the verification loop for the first file, as
    nothing has actually been merged at this point. This significantly
    increases performance for large config fragments.

    Signed-off-by: Josh Boyer
    Acked-by: John Stultz
    Acked-by: Darren Hart
    Signed-off-by: Michal Marek

    Josh Boyer
     
  • Fix following compile warnings:

    scripts/dtc/flattree.c: In function ‘flat_read_mem_reserve’:
    scripts/dtc/flattree.c:700:14: warning: variable ‘p’ set but not used
    [-Wunused-but-set-variable]

    scripts/dtc/dtc.c: In function ‘main’:
    scripts/dtc/dtc.c:104:17: warning: variable ‘check’ set but not used
    [-Wunused-but-set-variable]

    Signed-off-by: Felipe Balbi
    Signed-off-by: Michal Marek

    Felipe Balbi
     

24 Mar, 2012

15 commits

  • Some versions of ARM GCC which do support asm goto, do not support
    the %c specifier. Since we need the %c to support jump labels
    on ARM, detect that too in the asm goto detection script to avoid
    build errors with these versions.

    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48637

    Acked-by: Jason Baron
    Signed-off-by: Rabin Vincent
    Signed-off-by: Russell King

    Rabin Vincent
     
  • checkpatch already makes an exception to the 80-column rule for quoted
    strings, and Documentation/CodingStyle recommends not splitting quoted
    strings across lines, because it breaks the ability to grep for the
    string. Rather than just permitting this, actively warn about quoted
    strings split across lines.

    Test case:

    void context(void)
    {
    struct { unsigned magic; const char *strdata; } foo[] = {
    { 42, "these strings"
    "do not produce warnings" },
    { 256, "though perhaps"
    "they should" },
    };
    pr_err("this string"
    " should produce a warning\n");
    pr_err("this multi-line string\n"
    "should not produce a warning\n");
    asm ("this asm\n\t"
    "should not produce a warning");
    }

    Results of checkpatch on that test case:

    WARNING: quoted string split across lines
    + " should produce a warning\n");

    total: 0 errors, 1 warnings, 15 lines checked

    Signed-off-by: Josh Triplett
    Acked-by: Joe Perches
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Josh Triplett
     
  • Add blank lines between a few tests, remove an extraneous one.

    Signed-off-by: Joe Perches
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Using yield() is generally wrong. Warn on its use.

    Signed-off-by: Joe Perches
    Cc: Andy Whitcroft
    Cc: Peter Zijlstra
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Add some more subjective --strict tests.

    Add a test for block comments that start with a blank line followed only
    by a line with just the comment block initiator. Prefer a blank line
    followed by /* comment...

    Add a test for unnecessary spaces after a cast.

    Add a test for symmetric uses of braces in if/else blocks.
    If one branch needs braces, then all branches should use braces.

    Signed-off-by: Joe Perches
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Add [] to a type extensions. Fixes false positives on:

    .attrs = (struct attribute *[]) {

    Signed-off-by: Andy Whitcroft
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • With any very high precedence operator it is not necessary to enforce
    additional parentheses around simple negated expressions. This prevents
    us requesting further perentheses around the following:

    #define PMEM_IS_FREE(id, index) !(pmem[id].bitmap[index].allocated)

    For now add logical and bitwise not and unary minus.

    Signed-off-by: Andy Whitcroft
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • Adjacent strings indicate concatentation, therefore look at identifiers
    directly adjacent to literal strings as strings too. This allows us to
    better detect the form below and accept it as a simple constant:

    #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt

    Signed-off-by: Andy Whitcroft
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • Signed-off-by: Andy Whitcroft
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • Handle the [ A ... B ] form deeper into a definition, for example:

    static const unsigned char pci_irq_swizzle[2][PCI_MAX_DEVICES] = {
    {0, 0, 0, 0, 0, 0, 0, 27, 27, [9 ... PCI_MAX_DEVICES - 1] = 0 },
    {0, 0, 0, 0, 0, 0, 0, 29, 29, [9 ... PCI_MAX_DEVICES - 1] = 0 },
    };

    Reported-by: Marek Vasut
    Signed-off-by: Andy Whitcroft
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • Fix checkpatch.pl when both -q and --ignore are given and prevents it from
    printing a

    NOTE: Ignored message types: blah

    messages.

    E.g., if I use -q --ignore PREFER_PACKED,PREFER_ALIGNED, i see:

    NOTE: Ignored message types: PREFER_ALIGNED PREFER_PACKED

    It makes no sense to print this when -q is given.

    Signed-off-by: Artem Bityutskiy
    Cc: Andy Whitcroft
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Artem Bityutskiy
     
  • Argument alignment across multiple lines should match the open
    parenthesis.

    Logical continuations should be at the end of the previous line, not the
    start of a new line.

    These are not required by CodingStyle so make the tests active only when
    using --strict.

    Improved by some examples from Bruce Allen.

    Signed-off-by: Joe Perches
    Cc: "Bruce W. Allen"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • It's equivalent to __printf, so prefer __scanf.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Currently get_maintainer.pl reports moderated lists as open, which is just
    wrong.

    Signed-off-by: Richard Weinberger
    Acked-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Richard Weinberger
     
  • When an "S:" status line is unavailable, use a default "unknown" role.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches