25 May, 2011

1 commit

  • * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    kbuild: make KBUILD_NOCMDDEP=1 handle empty built-in.o
    scripts/kallsyms.c: fix potential segfault
    scripts/gen_initramfs_list.sh: Convert to a /bin/sh script
    kbuild: Fix GNU make v3.80 compatibility
    kbuild: Fix passing -Wno-* options to gcc 4.4+
    kbuild: move scripts/basic/docproc.c to scripts/docproc.c
    kbuild: Fix Makefile.asm-generic for um
    kbuild: Allow to combine multiple W= levels
    kbuild: Disable -Wunused-but-set-variable for gcc 4.6.0
    Fix handling of backlash character in LINUX_COMPILE_BY name
    kbuild: asm-generic support
    kbuild: implement several W= levels
    kbuild: Fix build with binutils <= 2.19
    initramfs: Use KBUILD_BUILD_TIMESTAMP for generated entries
    kbuild: Allow to override LINUX_COMPILE_BY and LINUX_COMPILE_HOST macros
    kbuild: Drop unused LINUX_COMPILE_TIME and LINUX_COMPILE_DOMAIN macros
    kbuild: Use the deterministic mode of ar
    kbuild: Call gzip with -n
    kbuild: move KALLSYMS_EXTRA_PASS from Kconfig to Makefile
    Kconfig: improve KALLSYMS_ALL documentation

    Fix up trivial conflict in Makefile

    Linus Torvalds
     

20 May, 2011

1 commit

  • …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: (107 commits)
    perf stat: Add more cache-miss percentage printouts
    perf stat: Add -d -d and -d -d -d options to show more CPU events
    ftrace/kbuild: Add recordmcount files to force full build
    ftrace: Add self-tests for multiple function trace users
    ftrace: Modify ftrace_set_filter/notrace to take ops
    ftrace: Allow dynamically allocated function tracers
    ftrace: Implement separate user function filtering
    ftrace: Free hash with call_rcu_sched()
    ftrace: Have global_ops store the functions that are to be traced
    ftrace: Add ops parameter to ftrace_startup/shutdown functions
    ftrace: Add enabled_functions file
    ftrace: Use counters to enable functions to trace
    ftrace: Separate hash allocation and assignment
    ftrace: Create a global_ops to hold the filter and notrace hashes
    ftrace: Use hash instead for FTRACE_FL_FILTER
    ftrace: Replace FTRACE_FL_NOTRACE flag with a hash of ignored functions
    perf bench, x86: Add alternatives-asm.h wrapper
    x86, 64-bit: Fix copy_[to/from]_user() checks for the userspace address limit
    x86, mem: memset_64.S: Optimize memset by enhanced REP MOVSB/STOSB
    x86, mem: memmove_64.S: Optimize memmove by enhanced REP MOVSB/STOSB
    ...

    Linus Torvalds
     

19 May, 2011

1 commit


17 May, 2011

1 commit

  • When mcount is called in a section that ftrace will not modify it into
    a nop, we want to warn about this. But not warn about this always. Now
    if the user builds the kernel with the option RECORDMCOUNT_WARN=1 then
    the build will warn about mcount callers that are ignored and will just
    waste execution time.

    Acked-by: Michal Marek
    Cc: linux-kbuild@vger.kernel.org
    Link: http://lkml.kernel.org/r/20110421023738.714956282@goodmis.org
    Signed-off-by: Steven Rostedt

    Steven Rostedt
     

11 May, 2011

1 commit

  • According to Documentation/Changes, the kernel should be buildable with
    GNU make 3.80+. Commit 88d7be031f9f975bb3f50a0b5ef3796a671e7edf (kbuild:
    Use a single clean rule for kernel and external modules) introduced the
    "$(or" construct, which requires make 3.81. This causes "make clean" to
    malfunction when it is used with external modules.

    Replace "$(or" with an equivalent "$(if" expression, to restore backward
    compatibility.

    Signed-off-by: Kevin Cernekee
    Cc: stable@kernel.org
    Signed-off-by: Michal Marek

    Kevin Cernekee
     

10 May, 2011

1 commit


04 May, 2011

1 commit


03 May, 2011

2 commits

  • Starting with 4.4, gcc will happily accept -Wno- in the
    cc-option test and complain later when compiling a file that has some
    other warning. This rather unexpected behavior is intentional as per
    http://gcc.gnu.org/PR28322, so work around it by testing for support of
    the opposite option (without the no-). Introduce a new Makefile function
    cc-disable-warning that does this and update two uses of cc-option in
    the toplevel Makefile.

    Reported-and-tested-by: Stephen Rothwell
    Signed-off-by: Michal Marek

    Michal Marek
     
  • Move docproc from scripts/basic to scripts so it is only built for *doc
    targets instead of every time the kernel is built.

    Peter Foley
     

02 May, 2011

1 commit


29 Apr, 2011

2 commits

  • Disable the new -Wunused-but-set-variable that was added in gcc 4.6.0
    It produces more false positives than useful warnings.

    This can still be enabled using W=1

    Signed-off-by: Dave Jones
    Acked-by: Sam Ravnborg
    Tested-by: Sam Ravnborg
    Signed-off-by: Michal Marek

    Dave Jones
     
  • 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
     

28 Apr, 2011

1 commit

  • Building a kernel with "make W=1" produces far too much noise to be
    useful.

    Divide the warning options in three groups:

    W=1 - warnings that may be relevant and does not occur too often
    W=2 - warnings that occur quite often but may still be relevant
    W=3 - the more obscure warnings, can most likely be ignored

    When building the whole kernel, those levels produce:

    W=1 - 4859 warnings
    W=2 - 1394 warnings
    W=3 - 86666 warnings

    respectively. Warnings have been counted with Geert's script at

    http://www.kernel.org/pub/linux/kernel/people/geert/linux-log/linux-log-summary.pl

    Many warnings occur from .h files so fixing one file may have a nice
    effect on the total number of warnings.

    With these changes I am actually tempted to try W=1 now and then.
    Previously there was just too much noise.

    Borislav:

    - make the W= levels exclusive
    - move very noisy and making little sense for the kernel warnings to W=3
    - drop -Woverlength-strings due to useless warning message
    - copy explanatory text for the different warning levels to 'make help'
    - recount warnings per level

    Signed-off-by: Sam Ravnborg
    Signed-off-by: Borislav Petkov
    Cc: Dave Jones
    Cc: Geert Uytterhoeven
    Signed-off-by: Michal Marek

    Sam Ravnborg
     

27 Apr, 2011

1 commit


20 Apr, 2011

1 commit


19 Apr, 2011

1 commit


15 Apr, 2011

1 commit

  • At the moment we have the CONFIG_KALLSYMS_EXTRA_PASS Kconfig switch,
    which users can enable or disable while configuring the kernel. This
    option is then used by 'make' to determine whether an extra kallsyms
    pass is needed or not.

    However, this approach is not nice and confusing, and this patch moves
    CONFIG_KALLSYMS_EXTRA_PASS from Kconfig to Makefile instead. The
    rationale is below.

    1. CONFIG_KALLSYMS_EXTRA_PASS is really about the build time, not
    run-time. There is no real need for it to be in Kconfig. It is
    just an additional work-around which should be used only in rare
    cases, when someone breaks kallsyms, so Kbuild/Makefile is much
    better place for this option.
    2. Grepping CONFIG_KALLSYMS_EXTRA_PASS shows that many defconfigs have
    it enabled, probably not because they try to work-around a kallsyms
    bug, but just because the Kconfig help text is confusing and does
    not really make it clear that this option should not be used unless
    except when kallsyms is broken.
    3. And since many people have CONFIG_KALLSYMS_EXTRA_PASS enabled in
    their Kconfig, we do might fail to notice kallsyms bugs in time. E.g.,
    many testers use "make allyesconfig" to test builds, which will enable
    CONFIG_KALLSYMS_EXTRA_PASS and kallsyms breakage will not be noticed.

    To address that, this patch:

    1. Kills CONFIG_KALLSYMS_EXTRA_PASS
    2. Changes Makefile so that people can use "make KALLSYMS_EXTRA_PASS=1"
    to enable the extra pass if needed. Additionally, they may define
    KALLSYMS_EXTRA_PASS as an environment variable.
    3. By default KALLSYMS_EXTRA_PASS is disabled and if kallsyms has issues,
    "make" should print a warning and suggest using KALLSYMS_EXTRA_PASS

    Signed-off-by: Artem Bityutskiy
    [mmarek: Removed make help text, is not necessary]
    Signed-off-by: Michal Marek

    Artem Bityutskiy
     

12 Apr, 2011

1 commit


06 Apr, 2011

1 commit


30 Mar, 2011

1 commit


22 Mar, 2011

1 commit

  • * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    kbuild: Make DEBUG_SECTION_MISMATCH selectable, but not on by default
    genksyms: Regenerate lexer and parser
    genksyms: Track changes to enum constants
    genksyms: simplify usage of find_symbol()
    genksyms: Add helpers for building string lists
    genksyms: Simplify printing of symbol types
    genksyms: Simplify lexer
    genksyms: Do not paste the bison header file to lex.c
    modpost: fix trailing comma
    KBuild: silence "'scripts/unifdef' is up to date."
    kbuild: Add extra gcc checks
    kbuild: reenable section mismatch analysis
    unifdef: update to upstream version 2.5

    Linus Torvalds
     

21 Mar, 2011

1 commit


19 Mar, 2011

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (47 commits)
    doc: CONFIG_UNEVICTABLE_LRU doesn't exist anymore
    Update cpuset info & webiste for cgroups
    dcdbas: force SMI to happen when expected
    arch/arm/Kconfig: remove one to many l's in the word.
    asm-generic/user.h: Fix spelling in comment
    drm: fix printk typo 'sracth'
    Remove one to many n's in a word
    Documentation/filesystems/romfs.txt: fixing link to genromfs
    drivers:scsi Change printk typo initate -> initiate
    serial, pch uart: Remove duplicate inclusion of linux/pci.h header
    fs/eventpoll.c: fix spelling
    mm: Fix out-of-date comments which refers non-existent functions
    drm: Fix printk typo 'failled'
    coh901318.c: Change initate to initiate.
    mbox-db5500.c Change initate to initiate.
    edac: correct i82975x error-info reported
    edac: correct i82975x mci initialisation
    edac: correct commented info
    fs: update comments to point correct document
    target: remove duplicate include of target/target_core_device.h from drivers/target/target_core_hba.c
    ...

    Trivial conflict in fs/eventpoll.c (spelling vs addition)

    Linus Torvalds
     

17 Mar, 2011

1 commit

  • While changing our build system over to use the headers_install target
    as part of our klibc build, the following message started showing up in
    our logs:

    make[2]: `scripts/unifdef' is up to date.

    It turns out that the build blindly invokes a recursive make on this
    target, which causes make to emit this message when the target is
    already up to date. This isn't seen for most targets as the rest of the
    build relies primarily on the default target and on PHONY targets when
    invoking make recursively.

    Silence the above message when building unifdef as part of
    headers_install by hiding it behind a new PHONY target called
    "build_unifdef" that has an empty recipe.

    Signed-off-by: Mike Waychison
    Acked-by: WANG Cong
    Signed-off-by: Michal Marek

    Mike Waychison
     

15 Mar, 2011

1 commit


09 Mar, 2011

1 commit

  • Add a 'W=1' Makefile switch which adds additional checking per build
    object.

    The idea behind this option is targeted at developers who, in the
    process of writing their code, want to do the occasional

    make W=1 [target.o]

    and let gcc do more extensive code checking for them. Then, they
    could eyeball the output for valid gcc warnings about various
    bugs/discrepancies which are not reported during the normal build
    process.

    For more background information and a use case, read through this
    thread: http://marc.info/?l=kernel-janitors&m=129802065918147&w=2

    Cc: Michal Marek
    Cc: linux-kbuild@vger.kernel.org
    Acked-by: Sam Ravnborg
    Acked-by: Ingo Molnar
    Signed-off-by: Borislav Petkov
    Signed-off-by: Michal Marek

    Borislav Petkov
     

08 Mar, 2011

1 commit


02 Mar, 2011

1 commit


22 Feb, 2011

1 commit


17 Feb, 2011

1 commit


16 Feb, 2011

1 commit


08 Feb, 2011

1 commit


01 Feb, 2011

1 commit


22 Jan, 2011

1 commit


19 Jan, 2011

1 commit


15 Jan, 2011

1 commit


11 Jan, 2011

1 commit

  • * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    mkuboot.sh: Fail if mkimage is missing
    gen_init_cpio: checkpatch fixes
    gen_init_cpio: Avoid race between call to stat() and call to open()
    modpost: Fix address calculation in reloc_location()
    Make fixdep error handling more explicit
    checksyscalls: Fix stand-alone usage
    modpost: Put .zdebug* section on white list
    kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG
    kbuild: export linux/{a.out,kvm,kvm_para}.h on headers_install_all
    kbuild: introduce HDR_ARCH_LIST for headers_install_all
    headers_install: check exit status of unifdef
    gen_init_cpio: remove leading `/' from file names
    scripts/genksyms: fix header usage
    fixdep: use hash table instead of a single array

    Linus Torvalds
     

05 Jan, 2011

1 commit


29 Dec, 2010

1 commit


22 Dec, 2010

1 commit