17 Jan, 2012

4 commits

  • * 'x86-syscall-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86: Move from trace_syscalls.c to asm/syscall.h
    x86, um: Fix typo in 32-bit system call modifications
    um: Use $(srctree) not $(KBUILD_SRC)
    x86, um: Mark system call tables readonly
    x86, um: Use the same style generated syscall tables as native
    um: Generate headers before generating user-offsets.s
    um: Run host archheaders, allow use of host generated headers
    kbuild, headers.sh: Don't make archheaders explicitly
    x86, syscall: Allow syscall offset to be symbolic
    x86, syscall: Re-fix typo in comment
    x86: Simplify syscallhdr.sh
    x86: Generate system call tables and unistd_*.h from tables
    checksyscalls: Use arch/x86/syscalls/syscall_32.tbl as source
    x86: Machine-readable syscall tables and scripts to process them
    trace: Include in trace_syscalls.c
    x86-64, ia32: Move compat_ni_syscall into C and its own file
    x86-64, syscall: Adjust comment spacing and remove typo
    kbuild: Add support for an "archheaders" target
    kbuild: Add support for installing generated asm headers

    Linus Torvalds
     
  • * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    scripts/coccinelle: improve the coverage of some semantic patches
    coccinelle: semantic patches related to devm_ functions (part 2)
    coccinelle: semantic patches related to devm_ functions (part 1)
    coccinelle.txt: update documentation to include M= option
    coccicheck: add M= option to control which dir is processed
    ctags: remove struct forward declarations
    scripts/tags.sh: Add Page flag function magic

    Linus Torvalds
     
  • * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    menuconfig: fix a regression when canceling the prompt dialog at exit
    kbuild: Fix compiler warning with assertion when calling 'fwrite'
    Improve update-po-config output
    menuconfig: let make not report error when not save configuration
    merge_config.sh: fix bug in final check
    merge_config.sh: whitespace cleanup
    merge_config.sh: use signal names compatible with dash and bash
    kconfig: add merge_config.sh script
    kconfig: use xfwrite wrapper function to silence warnings
    kconfig: fix set but not used warnings
    kconfig: fix warnings by specifing format arguments

    Linus Torvalds
     
  • * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    Kbuild: Use dtc's -d (dependency) option
    dtc: Implement -d option to write out a dependency file
    kbuild: Fix comment in Makefile.lib
    scripts/genksyms: clean lex/yacc generated files
    kbuild: Correctly deal with make options which contain an "s"

    Linus Torvalds
     

16 Jan, 2012

2 commits

  • This commit fixes a bug, while introducing a new one..

    commit 7203ddbd4be9720649e47d756a001e0c7d7f8ae2
    Author: Wang YanQing
    Date: Thu Jan 12 11:31:32 2012 +0800

    menuconfig: let make not report error when not save configuration

    Pressing ESC should cancel the yes/no dialog and return back to
    the main menu, but not exit from menuconfig.

    Signed-off-by: Li Zefan
    Acked-by: Wang YanQing
    Signed-off-by: Michal Marek

    Li Zefan
     
  • * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (39 commits)
    perf tools: Fix compile error on x86_64 Ubuntu
    perf report: Fix --stdio output alignment when --showcpuutilization used
    perf annotate: Get rid of field_sep check
    perf annotate: Fix usage string
    perf kmem: Fix a memory leak
    perf kmem: Add missing closedir() calls
    perf top: Add error message for EMFILE
    perf test: Change type of '-v' option to INCR
    perf script: Add missing closedir() calls
    tracing: Fix compile error when static ftrace is enabled
    recordmcount: Fix handling of elf64 big-endian objects.
    perf tools: Add const.h to MANIFEST to make perf-tar-src-pkg work again
    perf tools: Add support for guest/host-only profiling
    perf kvm: Do guest-only counting by default
    perf top: Don't update total_period on process_sample
    perf hists: Stop using 'self' for struct hist_entry
    perf hists: Rename total_session to total_period
    x86: Add counter when debug stack is used with interrupts enabled
    x86: Allow NMIs to hit breakpoints in i386
    x86: Keep current stack in NMI breakpoints
    ...

    Linus Torvalds
     

15 Jan, 2012

15 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-kconfig:
    kconfig/streamline-config.pl: Fix parsing Makefile with variables
    kconfig/streamline-config.pl: Simplify backslash line concatination

    Linus Torvalds
     
  • Reinhard Tartler discovered a corner case of calling xfwrite() where the
    length of the string is zero.

    Arnaud Lacombe suggested to use assertion for the corner case, as
    fwrite(3) is currently used:

    1) in comment printers. Empty comment are not allowed.
    2) in a callback passed to expr_print(), where the string printed is
    either NULL OR non-empty.
    3) in the lexer, auto-generated, and unused.

    I feel using assertion is a good solution:

    1) It cleanly takes care of the above-mentioned corner case.
    2) It can be easily disabled by defining NDEBUG.
    3) It asserts xfwrite() is simply a wrapper for fwrite().

    Reported-by: Reinhard Tartler
    Signed-off-by: Arnaud Lacombe
    Signed-off-by: Jean Sacren
    Signed-off-by: Michal Marek

    Arnaud Lacombe
     
  • Make the V=0 output from update-po-config be aligned correctly.
    Also remove an outdated comment and add a "GEN" statement.

    Signed-off-by: Peter Foley
    Signed-off-by: Michal Marek

    Peter Foley
     
  • This patch ensures that all semantic patches in the scripts/coccinelle
    directory provide the report option. Report messages that include line
    numbers now have the line number preceded by "line" for easier subsequent
    processing.

    Signed-off-by: Julia Lawall
    Signed-off-by: Michal Marek

    Julia Lawall
     
  • This hooks dtc into Kbuild's dependency system.

    Thus, for example, "make dtbs" will rebuild tegra-harmony.dtb if only
    tegra20.dtsi has changed yet tegra-harmony.dts has not. The previous
    lack of this feature recently caused me to have very confusing "git
    bisect" results.

    For ARM, it's obvious what to add to $(targets). I'm not familiar enough
    with other architectures to know what to add there. Powerpc appears to
    already add various .dtb files into $(targets), but the other archs may
    need something added to $(targets) to work.

    Signed-off-by: Stephen Warren
    Acked-by: Shawn Guo
    [mmarek: Dropped arch/c6x part to avoid merging commits from the middle
    of the merge window]
    Signed-off-by: Michal Marek

    Stephen Warren
     
  • This will allow callers to rebuild .dtb files when any of the /include/d
    .dtsi files are modified, not just the top-level .dts file.

    Signed-off-by: Stephen Warren
    Signed-off-by: Michal Marek

    Stephen Warren
     
  • devm_ functions allocate memory that is to remain allocated until the
    device is detached. This patch checks for freeing of such memory using
    standard memory freeing functions.

    Signed-off-by: Julia Lawall
    Signed-off-by: Michal Marek

    Julia Lawall
     
  • devm_ functions allocate memory that is to remain allocated until the
    device is detached. This patch checks for opportunities for using the
    function devm_request_and_ioremap.

    Signed-off-by: Julia Lawall
    Signed-off-by: Michal Marek

    Julia Lawall
     
  • Examples:
    make coccicheck M=drivers/net/wireless/
    make coccicheck SUBDIRS=drivers/net/wireless/

    Version 2:
    fix patch file names when using M=
    tell coccinelle where the include files are

    Version 3:
    Add second include option to support out of tree development
    Fix error message

    Signed-off-by: Greg Dietsche
    Acked-by: Julia Lawall
    Signed-off-by: Michal Marek

    Greg Dietsche
     
  • I find every time when I choice the 'NO' button at the dialog
    which let me choice whether to save the configuration before exit
    menuconfig, it always report the blow:

    " GEN /mnt/sda7/home/build/test/Makefile
    HOSTCC scripts/kconfig/mconf.o
    HOSTLD scripts/kconfig/mconf
    scripts/kconfig/mconf Kconfig

    Your configuration changes were NOT saved.

    make[2]: *** [menuconfig] Error 1
    make[1]: *** [menuconfig] Error 2
    make: *** [sub-make] Error 2 "

    This patch repair it.

    Signed-off-by: Wang YanQing
    Acked-by: Davidlohr Bueso
    Signed-off-by: Michal Marek

    Wang YanQing
     
  • Arnaud Lacombe pointed out the final checking that the requested configs
    were included in the final .config was broken.

    The example was that if you had a fragment that disabled
    CONFIG_DECOMPRESS_GZIP applied to a normal defconfig, there would be no
    final warning that CONFIG_DECOMPRESS_GZIP was acutally set in the final
    .config.

    This bug was introduced by me in v3 of the original patch, and the
    following patch reverts the invalid change.

    Signed-off-by: John Stultz
    Reported-by: Arnaud Lacombe
    Cc: Darren Hart
    Cc: Michal Marek
    Cc: Arnaud Lacombe
    Signed-off-by: Andrew Morton
    Signed-off-by: Michal Marek

    John Stultz
     
  • Fix whitespace usage in the clean_up routine.

    Signed-off-by: Darren Hart
    Acked-by: John Stultz
    Cc: Michal Marek
    Signed-off-by: Andrew Morton
    Signed-off-by: Michal Marek

    Darren Hart
     
  • The SIGHUP SIGINT and SIGTERM names caused failures when running
    merge_config.sh with the dash shell. Dropping the "SIG" component makes
    the script work in both bash and dash.

    Signed-off-by: Darren Hart
    Acked-by: John Stultz
    Cc: Michal Marek
    Signed-off-by: Andrew Morton
    Signed-off-by: Michal Marek

    Darren Hart
     
  • After noticing almost every distro has their own method of managing config
    fragments, I went looking at some best practices, and wanted to try to
    consolidate some of the different approaches so this fairly simple
    infrastructure can be shared (and new distros/build systems don't have to
    implement yet another config fragment merge script).

    This script is most influenced by the Windriver tools used in the Yocto
    Project, reusing some portions found there.

    This script merges multiple config fragments, warning on any overridden
    values. It then sets any unspecified values to their default, then
    finally checks to make sure no specified value was dropped due to
    unsatisfied dependencies.

    I'm sure this implementation won't work for everyone, and I expect it will
    need to evolve to adapt for various use cases. But I think its a
    reasonable starting point.

    Cc: Sam Ravnborg
    Cc: Greg Thelen
    Cc: Reinhard Tartler
    Cc: Dmitry Fink
    Cc: Darren Hart
    Cc: Eric B Munson
    Cc: Bruce Ashfield
    Cc: Michal Marek
    Signed-off-by: John Stultz
    Signed-off-by: Andrew Morton
    Signed-off-by: Michal Marek

    john stultz
     
  • Autogenerated GPG tag for Rusty D1ADB8F1: 15EE 8D6C AB0E 7F0C F999 BFCB D920 0E6C D1AD B8F1

    * tag 'for-linus' of git://github.com/rustyrussell/linux:
    module_param: check that bool parameters really are bool.
    intelfbdrv.c: bailearly is an int module_param
    paride/pcd: fix bool verbose module parameter.
    module_param: make bool parameters really bool (drivers & misc)
    module_param: make bool parameters really bool (arch)
    module_param: make bool parameters really bool (core code)
    kernel/async: remove redundant declaration.
    printk: fix unnecessary module_param_name.
    lirc_parallel: fix module parameter description.
    module_param: avoid bool abuse, add bint for special cases.
    module_param: check type correctness for module_param_array
    modpost: use linker section to generate table.
    modpost: use a table rather than a giant if/else statement.
    modules: sysfs - export: taint, coresize, initsize
    kernel/params: replace DEBUGP with pr_debug
    module: replace DEBUGP with pr_debug
    module: struct module_ref should contains long fields
    module: Fix performance regression on modules with large symbol tables
    module: Add comments describing how the "strmap" logic works

    Fix up conflicts in scripts/mod/file2alias.c due to the new linker-
    generated table approach to adding __mod_*_device_table entries. The
    ARM sa11x0 mcp bus needed to be converted to that too.

    Linus Torvalds
     

14 Jan, 2012

3 commits

  • * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (59 commits)
    rtc: max8925: Add function to work as wakeup source
    mfd: Add pm ops to max8925
    mfd: Convert aat2870 to dev_pm_ops
    mfd: Still check other interrupts if we get a wm831x touchscreen IRQ
    mfd: Introduce missing kfree in 88pm860x probe routine
    mfd: Add S5M series configuration
    mfd: Add s5m series irq driver
    mfd: Add S5M core driver
    mfd: Improve mc13xxx dt binding document
    mfd: Fix stmpe section mismatch
    mfd: Fix stmpe build warning
    mfd: Fix STMPE I2c build failure
    mfd: Constify aat2870-core i2c_device_id table
    gpio: Add support for stmpe variant 801
    mfd: Add support for stmpe variant 801
    mfd: Add support for stmpe variant 610
    mfd: Add support for STMPE SPI interface
    mfd: Separate out STMPE controller and interface specific code
    misc: Remove max8997-muic sysfs attributes
    mfd: Remove unused wm831x_irq_data_to_mask_reg()
    ...

    Fix up trivial conflict in drivers/leds/Kconfig due to addition of
    LEDS_MAX8997 and LEDS_TCA6507 next to each other.

    Linus Torvalds
     
  • Thomas Lange reported that when he did a 'make localmodconfig', his
    config was missing the brcmsmac driver, even though he had the module
    loaded.

    Looking into this, I found the file:
    drivers/net/wireless/brcm80211/brcmsmac/Makefile
    had the following in the Makefile:

    MODULEPFX := brcmsmac

    obj-$(CONFIG_BRCMSMAC) += $(MODULEPFX).o

    The way streamline-config.pl works, is parsing all the
    obj-$(CONFIG_FOO) += foo.o
    lines to find that CONFIG_FOO belongs to the module foo.ko.

    But in this case, the brcmsmac.o was not used, but a variable in its place.

    By changing streamline-config.pl to remember defined variables in Makefiles
    and substituting them when they are used in the obj-X lines, allows
    Thomas (and others) to have their brcmsmac module stay configured
    when it is loaded and running "make localmodconfig".

    Reported-by: Thomas Lange
    Tested-by: Thomas Lange
    Cc: Arend van Spriel
    Cc: stable@vger.kernel.org
    Signed-off-by: Steven Rostedt

    Steven Rostedt
     
  • Simplify the way lines ending with backslashes (continuation) in Makefiles
    is parsed. This is needed to implement a necessary fix.

    Tested-by: Thomas Lange
    Cc: stable@vger.kernel.org
    Signed-off-by: Steven Rostedt

    Steven Rostedt
     

13 Jan, 2012

2 commits


11 Jan, 2012

14 commits

  • Fix up type and cast spacing checks such that all occurences on a line are
    examined and reported. For example the line below has a valid cast and a
    bad type, but currently we check the cast first which is good and stop:

    u16* bar = (u16 *)baz;

    We will also only report one of the errors in this example:

    u16* bar = (u16*)bad;

    Move to iterating across all casts and all types, reporting any failure.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Andy Whitcroft
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • typeof may have various more complex forms as its arguement, not just an
    identifier. For now allow us to leak to the first close perenthesis ')'.

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

    Andy Whitcroft
     
  • Ensure the cast type is unique in the context parser, we do not want them
    to detect as a comma ','.

    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
     
  • We are incorrectly matching square brackets '[' and ']' leading to false
    positives on more complex functions as below:

    return (dt3155_fbuffer[m]->ready_head -
    dt3155_fbuffer[m]->ready_len +
    dt3155_fbuffer[m]->nbuffers)%
    (dt3155_fbuffer[m]->nbuffers);

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

    Andy Whitcroft
     
  • It is common to stub out a function as below, this is triggering a complex
    macro format incorrectly. Sort this out:

    #define cma_early_regions_reserve(reserve) do { } while (0)

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

    Andy Whitcroft
     
  • The following fragment defeats the DEVICE_ATTR style handing, check for
    and ignore the close brace '}' in this context:

    int foo()
    {
    }
    DEVICE_ATTR(link_power_management_policy, S_IRUGO | S_IWUSR,
    ata_scsi_lpm_show, ata_scsi_lpm_put);
    EXPORT_SYMBOL_GPL(dev_attr_link_power_management_policy);

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

    Andy Whitcroft
     
  • The intent of this check is to catch the options which the user will see
    and ensure they are properly described. It is also common for internal
    only options to have a brief description. Allow this form.

    Reported-by: Steven Rostedt
    Tested-by: Steven Rostedt
    Signed-off-by: Andy Whitcroft
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • In the middle of a long definition or similar, there is no possibility of
    finding a smaller sub-statement. Optimise this case by skipping statement
    aquirey where there are no starts of statement (open brace '{' or
    semi-colon ';'). We are likely to scan slightly more than needed still
    but this is safest.

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

    Andy Whitcroft
     
  • Inserting a # into the modifiers list will incorrectly add the null string
    to the modifiers list, leading to an infinite loop. As neither of these
    is a valid modifier form simply ignore them.

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

    Andy Whitcroft
     
  • Improve the checking of arguments to memset and min/max tests.

    Move the checking of min/max to statement blocks instead of single line.
    Change $Constant to allow any case type 0x initiator and trailing ul
    specifier. Add $FuncArg type as any function argument with or without a
    cast. Print the whole statement when showing memset or min/max messages.
    Improve the memset with 0 as 3rd argument error message.

    There are still weaknesses in the $FuncArg and $Constant code as arbitrary
    parentheses and negative signs are not generically supported.

    [akpm@linux-foundation.org: fix per Andy]
    Signed-off-by: Joe Perches
    Acked-by: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Move the memset checks over to work against the statement. Also add
    checks for 0 and 1 used as lengths. Generally these indicate badly
    ordered parameters.

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

    Andy Whitcroft
     
  • When looking for a statement we currently run on through preprocessor
    commands. This means that a header file with just definitions is parsed
    over and over again combining all of the lines from the current line to
    the end of file leading to severe performance issues.

    Fix up context accumulation to track preprocessor commands and stop when
    reaching the end of them. At the same time vastly simplify the #define
    handling.

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

    Andy Whitcroft
     
  • Add a warn for not using __printf.

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

    Joe Perches