28 Feb, 2009

8 commits


18 Feb, 2009

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
    kbuild: create the source symlink earlier in the objdir
    scripts: add x86 64 bit support to the markup_oops.pl script
    scripts: add x86 register parser to markup_oops.pl
    kbuild: add sys_* entries for syscalls in tags
    kbuild: fix tags generation of config symbols
    bootgraph: fix for use with dot symbols
    kbuild: add vmlinux to kernel rpm
    kbuild,setlocalversion: shorten the make time when using svn

    Linus Torvalds
     

17 Feb, 2009

1 commit


15 Feb, 2009

7 commits

  • Signed-off-by: Arjan van de Ven
    Signed-off-by: Andrew Morton
    Signed-off-by: Sam Ravnborg

    Arjan van de Ven
     
  • An oops dump also contains the register values.

    This patch parses these for (32 bit) x86, and then annotates the
    disassembly with these values; this helps in analysis of the oops by the
    developer, for example, NULL pointer or other pointer bugs show up clearly
    this way.

    Signed-off-by: Arjan van de Ven
    Signed-off-by: Andrew Morton
    Signed-off-by: Sam Ravnborg

    Arjan van de Ven
     
  • Currently, it is no longer possible to use the tags file to jump to
    system call function definitions with sys_foo, because the definitions
    are obscured by use of the SYSCALL_DEFINE* macros.

    This patch adds the appropriate option to ctags to make it see through
    the macro. Also, it adds the ENTRY() work already done for Exuberant
    to Emacs too.

    Signed-off-by: Rabin Vincent
    Signed-off-by: Sam Ravnborg

    Rabin Vincent
     
  • commit 4f628248a578585472e19e4cba2c604643af8c6c aka "kbuild: reintroduce
    ALLSOURCE_ARCHS support for tags/cscope" breaks tags generation for
    Kconfig symbols.

    Steps to reproduce:

    make tags
    vi -t PROC_FS

    It should jump to 'config PROC_FS' line.

    Signed-off-by: Alexey Dobriyan
    Tested-by: Pete Wyckoff
    Signed-off-by: Andrew Morton
    Signed-off-by: Sam Ravnborg

    Alexey Dobriyan
     
  • powerpc has dot symbols, so the dmesg output looks like:

    [ 0.327310] calling .migration_init+0x0/0x9c @ 1
    [ 0.327595] initcall .migration_init+0x0/0x9c returned 1 after 0 usecs

    The below fixes bootgraph.pl so it handles this correctly.

    Signed-off-by: Michael Neuling
    Signed-off-by: Arjan van de Ven
    Signed-off-by: Andrew Morton
    Signed-off-by: Sam Ravnborg

    Michael Neuling
     
  • We are building an automated system to test kernels weekly and need to
    provide an rpm to our QA dept. We would like to use the ability to create
    kernel rpms already in the kernel's Makefile, but need the vmlinux file
    included in the rpm for later debugging.

    This patch adds a compressed vmlinux to the kernel rpm when doing a
    make rpm-pkg or binrpm-pkg and upon install places the vmlinux file in /boot.

    Signed-off-by: Josh Hunt
    Signed-off-by: Sam Ravnborg

    Josh Hunt
     
  • Don't bother doing `svn st` as it takes a retarded amount of time when
    the source is cold

    Signed-off-by: Mike Frysinger
    Signed-off-by: Bryan Wu
    Signed-off-by: Sam Ravnborg

    Mike Frysinger
     

12 Feb, 2009

1 commit

  • Fix kernel-doc processing of SYSCALL wrappers.

    The SYSCALL wrapper patches played havoc with kernel-doc for
    syscalls. Syscalls that were scanned for DocBook processing
    reported warnings like this one, for sys_tgkill:

    Warning(kernel/signal.c:2285): No description found for parameter 'tgkill'
    Warning(kernel/signal.c:2285): No description found for parameter 'pid_t'
    Warning(kernel/signal.c:2285): No description found for parameter 'int'

    because the macro parameters all "look like" function parameters,
    although they are not:

    /**
    * sys_tgkill - send signal to one specific thread
    * @tgid: the thread group ID of the thread
    * @pid: the PID of the thread
    * @sig: signal to be sent
    *
    * This syscall also checks the @tgid and returns -ESRCH even if the PID
    * exists but it's not belonging to the target process anymore. This
    * method solves the problem of threads exiting and PIDs getting reused.
    */
    SYSCALL_DEFINE3(tgkill, pid_t, tgid, pid_t, pid, int, sig)
    {
    ...

    This patch special-cases the handling SYSCALL_DEFINE* function
    prototypes by expanding them to
    long sys_foobar(type1 arg1, type1 arg2, ...)

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     

27 Jan, 2009

1 commit


21 Jan, 2009

1 commit


16 Jan, 2009

6 commits


15 Jan, 2009

2 commits

  • Requested by Sam.

    Signed-off-by: Andi Kleen
    Signed-off-by: Sam Ravnborg

    Andi Kleen
     
  • This reverts commit ad7a953c522ceb496611d127e51e278bfe0ff483.

    And commit: ("allow stripping of generated symbols under CONFIG_KALLSYMS_ALL")
    9bb482476c6c9d1ae033306440c51ceac93ea80c

    These stripping patches has caused a set of issues:

    1) People have reported compatibility issues with binutils due to
    lack of support for `--strip-unneeded-symbols' with objcopy 2.15.92.0.2
    Reported by: Wenji
    2) ccache and distcc no longer works as expeced
    Reported by: Ted, Roland, + others
    3) The installed modules increased a lot in size
    Reported by: Ted, Davej + others

    Reported-by: Wenji Huang
    Reported-by: "Theodore Ts'o"
    Reported-by: Dave Jones
    Reported-by: Roland McGrath
    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     

13 Jan, 2009

1 commit

  • There has been some light flamewar on lkml about decoding oopses
    in modules (as part of the crashdump flamewar).

    Now this isn't rocket science, just the markup_oops.pl script
    cheaped out and didn't handle modules. But really; a flamewar
    all about that?? What happened to C++ in the kernel or reading
    files from inside the kernel?

    This patch adds module support to markup_oops.pl; it's not the
    most pretty perl but it works for my testcases...

    Signed-off-by: Arjan van de Ven
    Signed-off-by: Linus Torvalds

    Arjan van de Ven
     

11 Jan, 2009

1 commit


08 Jan, 2009

4 commits

  • I often change single options in .config files. Instead of using
    an editor or one of the frontends it's convenient to do this from
    the command line. It's also useful to do from automated build scripts
    when building different variants from a base config file.

    I extracted most of the CONFIG manipulation code from one of my
    build scripts into a new shell script scripts/config

    The script is not integrated with the normal Kconfig machinery
    and doesn't do any checking against Kconfig files, but just manipulates
    that text format. This is always done at make time anyways.

    I believe this script would be a useful standard addition for scripts/*

    Sample usage:

    ./scripts/config --disable smp
    Disable SMP in .config file

    ./scripts/config --file otherdir/.config --module e1000e
    Enable E1000E as module in otherdir/.config

    ./scripts/config --state smp
    y
    Check state of config option CONFIG_SMP

    After merging into git please make scripts/config executable

    Signed-off-by: Andi Kleen
    Signed-off-by: Sam Ravnborg

    Andi Kleen
     
  • This patch reintroduce the ALLSOURCE_ARCHS support for tags/TAGS/
    cscope targets. The Kbuild previously has this feature, but after
    moving the targets into scripts/tags.sh, ALLSOURCE_ARCHS disappears.

    It's something like this:

    $ make ALLSOURCE_ARCHS="x86 mips arm" tags cscope

    Signed-off-by: Jike Song
    Signed-off-by: Sam Ravnborg

    Jike Song
     
  • Dave Jones, in his blog, had some feedback about the bootchart script:
    Primarily his complaint was that shorter delays weren't visualized.

    The reason for that was that too small delays will have their labels
    mixed up in the graph in an unreadable mess.

    This patch has a fix for this; for one, it makes the output wider,
    so more will fit.
    The second part is that smaller delays are now shown with a
    much smaller font for the label; while this isn't per se
    readable at a 1:1 zoom, at least you can zoom in with most SVG
    viewing applications and see what it is you are looking at.

    Signed-off-by: Arjan van de Ven
    Signed-off-by: Sam Ravnborg

    Arjan van de Ven
     
  • Rafael reported:

    I get the following error from 'make modules_install' on my test boxes:

    HOSTCC firmware/ihex2fw
    /home/rafael/src/linux-2.6/firmware/ihex2fw.c:268: fatal error: opening dependency file firmware/.ihex2fw.d: Read-only file system
    compilation terminated.
    make[3]: *** [firmware/ihex2fw] Error 1
    make[2]: *** [_modinst_post] Error 2
    make[1]: *** [sub-make] Error 2
    make: *** [all] Error 2

    where the configuration is that the kernel is compiled on a build box
    with 'make O= -j5' and then is mounted over NFS read-only by
    each test box (full path to this directory is the same on the build box and on
    the test boxes). Then, I cd into , run 'make modules_install' and get
    the error above.

    The issue turns out to be that we when we install firmware pick
    up the list of firmware blobs from firmware/Makefile.
    And this triggers the Makefile rules to update ihex2fw.

    There were two solutions for this issue:
    1) Move the list of firmware blobs to a separate file
    2) Avoid ihex2fw rebuild by moving it to scripts

    As I seriously beleive that the list of firmware blobs should be
    done in a fundamental different way solution 2) was selected.

    Reported-and-tested-by: "Rafael J. Wysocki"
    Signed-off-by: Sam Ravnborg
    Cc: David Woodhouse

    Sam Ravnborg
     

07 Jan, 2009

6 commits