12 Sep, 2010

2 commits

  • When you don't use !E or !I but only !F, then it's very easy to miss
    including some functions, structs etc. in documentation. To help
    finding which ones were missed, allow printing out the unused ones as
    warnings.

    For example, using this on mac80211 yields a lot of warnings like this:

    Warning: didn't use docs for DOC: mac80211 workqueue
    Warning: didn't use docs for ieee80211_max_queues
    Warning: didn't use docs for ieee80211_bss_change
    Warning: didn't use docs for ieee80211_bss_conf

    when generating the documentation for it.

    Signed-off-by: Johannes Berg
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Johannes Berg
     
  • There are valid attributes that could have upper case letters, but we
    still want to remove, like for example
    __attribute__((aligned(NETDEV_ALIGN)))
    as encountered in the wireless code.

    Signed-off-by: Johannes Berg
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Johannes Berg
     

24 Aug, 2010

1 commit


21 Aug, 2010

1 commit

  • Dan McGee writes:
    > Note that when in git, you get the appended "+" sign. If
    > LOCALVERSION_AUTO is set, you will get something like
    > "eee-gb01b08c-dirty" (whereas the copy of the tree in /tmp still
    > returns "eee"). It doesn't matter whether the working tree is dirty or
    > clean.
    >
    > Is there a way to disable this? I'm building from a clean tarball that
    > just happens to be unpacked inside a git repository. One would think
    > setting LOCALVERSION_AUTO to false would do it, but no such luck...

    Fix this by checking if the kernel source tree is the root of the git or
    hg repository. No fix for svn: If the kernel source is not tracked in
    the svn repository, it works as expected, otherwise determining the
    'repository root' is not really a defined task.

    Reported-and-tested-by: Dan McGee
    Signed-off-by: Michal Marek

    Michal Marek
     

20 Aug, 2010

1 commit


17 Aug, 2010

1 commit

  • It doesn't like pattern and explicit rules to be on the same line,
    and it seems to be more picky when matching file (or really directory)
    names with different numbers of trailing slashes.

    Signed-off-by: Jan Beulich
    Acked-by: Sam Ravnborg
    Andrew Benton
    Cc:
    Signed-off-by: Michal Marek

    Jan Beulich
     

16 Aug, 2010

1 commit


15 Aug, 2010

3 commits

  • Following sample Kconfig generated a segfault:

    config FOO
    bool
    select PERF_EVENTS if HAVE_HW_BREAKPOINT

    config PERF_EVENTS
    bool

    config HAVE_HW_BREAKPOINT
    bool
    depends on PERF_EVENTS

    Fix by reverting back to a valid property if there was no
    property on the stack of symbols.

    The above pattern were seen in sh Kconfig.
    A fix for the Kconfig file has been sent to the sh folks.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: Michal Marek

    Sam Ravnborg
     
  • savedefconfig failed to save the correct minimal config
    when it encountered a choice marked optional.

    Consider following minimal configuration:
    $cat Kconfig
    choice
    prompt "choice"
    optional

    config A
    bool "a"

    config B
    bool "b"

    endchoice

    $cat .config | grep -v ^#
    CONFIG_A=y

    $conf --savedefconfig=defconfig Kconfig

    would before this fix result in an empty file, because
    kconfig would assume that CONFIG_A=y is a default value.
    But because the choice is optional the default is that
    both A and B are =n.

    Fix so we handle optional choices correct.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: Michal Marek

    Sam Ravnborg
     
  • unifdef-y is not used anymore - drop remaining references

    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     

14 Aug, 2010

2 commits


13 Aug, 2010

6 commits

  • The manpage for cut says it will return all lines without the delimiter
    unless -s is specified.

    When I backed up my mecurial tree to generate modules, I found that the
    scm part of localversion was turning up blank.

    Signed-off-by: Milton Miller
    Cc: Michal Marek
    Cc: "Michał Górny"
    Signed-off-by: Michal Marek

    Milton Miller
     
  • This fix facilitates fgets() either it returns on success or on error or
    when end of file occurs.

    Signed-off-by: Jean Sacren
    Signed-off-by: Michal Marek

    Jean Sacren
     
  • This fix facilitates fwrite() in both confdata.c and expr.c, either it
    succeeds in writing, or an error occurs, or the end of file is reached.

    Signed-off-by: Jean Sacren
    Signed-off-by: Michal Marek

    Jean Sacren
     
  • nconf crush with segfault if press right arrow in empty menu.

    Signed-off-by: Andrej Gelenberg
    Signed-off-by: Michal Marek

    Andrej Gelenberg
     
  • * 'params' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: (22 commits)
    param: don't deref arg in __same_type() checks
    param: update drivers/acpi/debug.c to new scheme
    param: use module_param in drivers/message/fusion/mptbase.c
    ide: use module_param_named rather than module_param_call
    param: update drivers/char/ipmi/ipmi_watchdog.c to new scheme
    param: lock if_sdio's lbs_helper_name and lbs_fw_name against sysfs changes.
    param: lock myri10ge_fw_name against sysfs changes.
    param: simple locking for sysfs-writable charp parameters
    param: remove unnecessary writable charp
    param: add kerneldoc to moduleparam.h
    param: locking for kernel parameters
    param: make param sections const.
    param: use free hook for charp (fix leak of charp parameters)
    param: add a free hook to kernel_param_ops.
    param: silence .init.text references from param ops
    Add param ops struct for hvc_iucv driver.
    nfs: update for module_param_named API change
    AppArmor: update for module_param_named API change
    param: use ops in struct kernel_param, rather than get and set fns directly
    param: move the EXPORT_SYMBOL to after the definitions.
    ...

    Linus Torvalds
     
  • Permit .GCC-command-line sections in modules. Otherwise modpost says things
    like:

    WARNING: drivers/mtd/chips/map_ram.o (.GCC-command-line): unexpected non-allocatable section.
    Did you forget to use "ax"/"aw" in a .S file?
    Note that for example contains
    section definitions for use in .S files.

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

    David Howells
     

12 Aug, 2010

3 commits

  • The mcount call on Blackfin systems includes some stack manipulation
    around the actual call site, so extend the build time perl script to
    support this. This way we can avoid doing the calculation at runtime.

    Signed-off-by: Mike Frysinger
    LKML-Reference:
    Signed-off-by: Steven Rostedt

    Mike Frysinger
     
  • If a minimal config did not specify the value
    of all choice values, the resulting configuration
    could have wrong values.

    Consider following example:
    config M
    def_bool y
    option modules
    choice
    prompt "choice list"
    config A
    tristate "a"
    config B
    tristate "b"
    endchoice

    With a defconfig like this:
    CONFIG_M=y
    CONFIG_A=y

    The resulting configuration would have

    CONFIG_A=m

    which was unexpected.

    The problem was not not all choice values were set and thus
    kconfig calculated a wrong value.

    The fix is to set all choice values when we
    read a defconfig files.

    conf_set_all_new_symbols() is refactored such that
    random choice values are now handled by a dedicated function.
    And new choice values are set by set_all_choice_values().

    This was not the minimal fix, but the fix that resulted
    in the most readable code.

    Signed-off-by: Sam Ravnborg
    Reported-by: Arve Hjønnevåg
    Tested-by: Arve Hjønnevåg
    Signed-off-by: Michal Marek

    Sam Ravnborg
     
  • savedefconfig failed to save choice symbols equal to 'y'
    for tristate choices.
    This resulted in this value being lost.

    In particular is fixes an issue where

    make ARCH=avr32 atngw100_defconfig
    make ARCH=avr32 savedefconfig
    cp defconfig arch/avr32/configs/atngw100_defconfig
    make ARCH=avr32 atngw100_defconfig
    diff -u .config .config.old

    failed to produce an identical .config.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: Michal Marek

    Sam Ravnborg
     

11 Aug, 2010

3 commits

  • Fix mtd/nand_base.c kernel-doc warnings and typos.

    Warning(drivers/mtd/nand/nand_base.c:893): No description found for parameter 'mtd'
    Warning(drivers/mtd/nand/nand_base.c:893): No description found for parameter 'ofs'
    Warning(drivers/mtd/nand/nand_base.c:893): No description found for parameter 'len'
    Warning(drivers/mtd/nand/nand_base.c:893): No description found for parameter 'invert'
    Warning(drivers/mtd/nand/nand_base.c:930): No description found for parameter 'mtd'
    Warning(drivers/mtd/nand/nand_base.c:930): No description found for parameter 'ofs'
    Warning(drivers/mtd/nand/nand_base.c:930): No description found for parameter 'len'
    Warning(drivers/mtd/nand/nand_base.c:987): No description found for parameter 'mtd'
    Warning(drivers/mtd/nand/nand_base.c:987): No description found for parameter 'ofs'
    Warning(drivers/mtd/nand/nand_base.c:987): No description found for parameter 'len'
    Warning(drivers/mtd/nand/nand_base.c:2087): No description found for parameter 'len'

    Signed-off-by: Randy Dunlap
    Cc: David Woodhouse
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Fix error introduced by 37ed19d5cce35a40d3913cf9aa208ce9f60db3d7
    ("scripts/mod/modpost.c: fix memory leak").

    - don't kfree("")

    - fix one missed conversion

    Reported-by: Stephen Rothwell
    Tested-by: Stephen Rothwell
    Cc: Alexey Fomenko
    Cc: Trevor Keith
    Cc: Rusty Russell
    Cc: Michal Marek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Ideally, we'd check that it was only the "set" function which was __init,
    and that the permissions were r/o. But that's a little hard.

    Signed-off-by: Rusty Russell
    Acked-by: Sam Ravnborg
    Tested-by: Phil Carmody

    Rusty Russell
     

10 Aug, 2010

8 commits

  • These are caused by checkpatch incorrectly parsing its internal
    representation of a statement block for struct's (or anything else that is
    a statement block encapsulated in {}'s that also ends with a ';'). Fix
    this by properly parsing a statement block.

    An example:

    +struct dummy_type dummy = {
    + .foo = "baz",
    +};
    +EXPORT_SYMBOL_GPL(dummy);
    +
    +static int dummy_func(void)
    +{
    + return -EDUMMYCODE;
    +}
    +EXPORT_SYMBOL_GPL(dummy_func);

    WARNING: EXPORT_SYMBOL(foo); should immediately \
    follow its function/variable
    #19: FILE: dummy.c:4:
    +EXPORT_SYMBOL_GPL(dummy);

    The above warning is issued when it should not be.

    Signed-off-by: Patrick Pannuto
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Patrick Pannuto
     
  • As explained in Documentation/timers/timers-howto.txt, msleep's of < 20ms
    may sleep for as long as 20ms. Caller's of msleep(1) or msleep(2), etc
    are likely not to expect this quirky behavior - warn them.

    Signed-off-by: Patrick Pannuto
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Patrick Pannuto
     
  • When possible, sleeping is (usually) better than delaying; however, don't
    bother callers of udelay < 10us, as those cases are generally not worth
    the switch to usleep

    [akpm@linux-foundation.org: fix mismatched parentheses]
    Signed-off-by: Patrick Pannuto
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Patrick Pannuto
     
  • Add new logging functions netdev_ and netif_.
    Don't complain if the only thing on a line is a quoted string.

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

    Joe Perches
     
  • Make error message say 'ERROR: do not initialise globals to 0 or NULL'
    rather than 'ERROR: do not initialise externals to 0 or NULL'. Makes more
    sense in the context since there is an extern keyword in C and that is a
    global declaration within the scope of the current file.

    Signed-off-by: Joe Eloff
    Cc: Andy Whitcroft
    Cc: Wolfram Sang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Eloff
     
  • I've got a false positive when spaces are present at the beginning of a
    line.

    So I add this check, obviously excluding to check the lines in the middle of
    comments.

    For instance this code passes the checkpatch test:

    +struct davinci_mcbsp_data {
    + unsigned int fmt;
    + int clk_div;
    +};
    +
    +static struct davinci_mcbsp_data mcbsp_data;

    Where, before the string "int clk_div", I have 4 spaces (\040
    ascii character).

    With v2.6.34 scripts/checkpatch.pl script I get:

    scripts/checkpatch.pl 0001-ASoC-DaVinci-Added-support-for-stereo-I2S.patch
    total: 0 errors, 0 warnings, 201 lines checked
    0001-ASoC-DaVinci-Added-support-for-stereo-I2S.patch has no obvious style
    problems and is ready for submission.

    That is not correct. Instead with the proposed patch I get:

    scripts/checkpatch.pl 0001-ASoC-DaVinci-Added-support-for-stereo-I2S.patch
    WARNING: please, no space for starting a line,
    excluding comments
    #63: FILE: sound/soc/davinci/davinci-i2s.c:165:
    + int clk_div;$

    WARNING: please, no space for starting a line,
    excluding comments
    #95: FILE: sound/soc/davinci/davinci-i2s.c:406:
    + return 0;$

    total: 0 errors, 2 warnings, 201 lines checked

    That is correct.

    Signed-off-by: Raffaele Recalcati
    Cc: Wolfram Sang
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Raffaele Recalcati
     
  • Change the check suggesting replacement of asm-includes with
    linux-includes. Exceptions to this rule are easier to extend now. Add
    memory.h because ARM has a custom one.

    Signed-off-by: Wolfram Sang
    Cc: Russell King
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Wolfram Sang
     
  • sec2annotation returns malloc'ed buffer directly to printf as an argument.
    Free this buffer after printing.

    Signed-off-by: Alexey Fomenko
    Cc: Trevor Keith
    Cc: Rusty Russell
    Cc: Michal Marek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Fomenko
     

09 Aug, 2010

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
    arch/tile: check kmalloc() result
    arch/tile: catch up on various minor cleanups.
    arch/tile: avoid erroneous error return for PTRACE_POKEUSR.
    tile: set ARCH_KMALLOC_MINALIGN
    tile: remove homegrown L1_CACHE_ALIGN macro
    arch/tile: Miscellaneous cleanup changes.
    arch/tile: Split the icache flush code off to a generic header.
    arch/tile: Fix bug in support for atomic64_xx() ops.
    arch/tile: Shrink the tile-opcode files considerably.
    arch/tile: Add driver to enable access to the user dynamic network.
    arch/tile: Enable more sophisticated IRQ model for 32-bit chips.
    Move list types from to .
    Add wait4() back to the set of syscalls.
    Revert adding some arch-specific signal syscalls to .
    arch/tile: Do not use GFP_KERNEL for dma_alloc_coherent(). Feedback from fujita.tomonori@lab.ntt.co.jp.
    arch/tile: core support for Tilera 32-bit chips.
    Fix up the "generic" unistd.h ABI to be more useful.

    Linus Torvalds
     

07 Aug, 2010

2 commits

  • …git/tip/linux-2.6-tip

    * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (162 commits)
    tracing/kprobes: unregister_trace_probe needs to be called under mutex
    perf: expose event__process function
    perf events: Fix mmap offset determination
    perf, powerpc: fsl_emb: Restore setting perf_sample_data.period
    perf, powerpc: Convert the FSL driver to use local64_t
    perf tools: Don't keep unreferenced maps when unmaps are detected
    perf session: Invalidate last_match when removing threads from rb_tree
    perf session: Free the ref_reloc_sym memory at the right place
    x86,mmiotrace: Add support for tracing STOS instruction
    perf, sched migration: Librarize task states and event headers helpers
    perf, sched migration: Librarize the GUI class
    perf, sched migration: Make the GUI class client agnostic
    perf, sched migration: Make it vertically scrollable
    perf, sched migration: Parameterize cpu height and spacing
    perf, sched migration: Fix key bindings
    perf, sched migration: Ignore unhandled task states
    perf, sched migration: Handle ignored migrate out events
    perf: New migration tool overview
    tracing: Drop cpparg() macro
    perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call
    ...

    Fix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c

    Linus Torvalds
     
  • Linus wrote:
    This seems to make "make oldconfig" a _lot_ more verbose than it
    used to be. In a very annoying way.

    I just did a quick git bisect. It's introduced by commit 4062f1a4c030
    ("kconfig: use long options in conf") by Sam Ravnborg. Apparently that
    thing is totally buggy, and doesn't just change the option names, but
    actively breaks them.

    The old behaviour (from years ago) were reintroduced by accident. Fix
    this so we are back to the version that are silent if there is nothing
    to ask about.

    Reported-by: Linus Torvalds
    Signed-off-by: Sam Ravnborg
    Reviewed-by: Michal Marek
    Signed-off-by: Linus Torvalds

    Sam Ravnborg
     

06 Aug, 2010

4 commits

  • Chris Metcalf
     
  • * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    scripts/dtc: Fix a resource leak
    Documentation: fix ubuntu distro name
    MAINTAINERS: Update kbuild git URLs
    Add support for the C variable in the coccicheck script
    Add scripts/coccinelle/deref_null.cocci
    Add scripts/coccinelle/err_cast.cocci
    Add scripts/coccinelle/resource_size.cocci
    Add scripts/coccinelle/alloc/kzalloc-simple.cocci
    Add scripts/coccinelle/alloc/drop_kmalloc_cast.cocci
    Add Documentation/coccinelle.txt
    Add a target to use the Coccinelle checker
    scripts: decodecode: remove bashisms
    Makefile: clarify a comment
    checkkconfigsymbols.sh: Kconfig symbols sometimes have lowercase letters
    scripts: add nconf into gitignore file

    Linus Torvalds
     
  • * 'packaging' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    kbuild: Change section of generated debian packages to kernel
    kbuild: Mark that the packages generated conform to Standards-Version 3.8.4
    kbuild: Add homepage field to debian/control file

    Linus Torvalds
     
  • * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: (26 commits)
    kconfig: add savedefconfig
    kconfig: code refactoring in confdata.c
    kconfig: refactor code in symbol.c
    kconfig: add alldefconfig
    kconfig: print more info when we see a recursive dependency
    kconfig: save location of config symbols
    kconfig: change nonint_oldconfig to listnewconfig
    kconfig: rename loose_nonint_oldconfig => oldnoconfig
    kconfig: use long options in conf
    kconfig: fix MODULES-related bug in case of no .config
    kconfig: make randconfig fair for booleans
    kconfig: Don't write invisible choice values
    kbuild: Warn on selecting symbols with unmet direct dependencies
    scripts:conf.c Fix warning: variable 'type' set but not used
    menuconfig: truncate list items
    menuconfig: fix to center checklist correctly in a corner case
    xconfig: add support to show hidden options which have prompts
    xconfig: remove unused function
    xconfig: clean up
    gconfig: fix null pointer warning
    ...

    Linus Torvalds
     

04 Aug, 2010

1 commit