lkml.org 
[lkml]   [2010]   [Jun]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Additional info on modpost segfault
    On Tue, Jun 08, 2010 at 11:24:18AM -0700, Alan wrote:
    >On Tue, 2010-06-08 at 13:51 +0800, Américo Wang wrote:
    >> On Mon, Jun 07, 2010 at 09:59:39AM -0700, Alan wrote:
    >> >On Fri, 2010-06-04 at 09:22 +0200, Michal Marek wrote:
    >> >> On 4.6.2010 06:51, Américo Wang wrote:
    >> >> > On Thu, Jun 03, 2010 at 08:10:30PM -0700, alan wrote:
    >> >> >> Missed adding the actual segfault message:
    >> >> >>
    >> >> >> LD drivers/usb/built-in.o
    >> >> >> LD drivers/built-in.o
    >> >> >> LD vmlinux.o
    >> >> >> MODPOST vmlinux.o
    >> >> >> /bin/sh: line 1: 20665 Segmentation fault (core dumped)
    >> >> >> scripts/mod/modpost -o
    >> >> >> /home/alan/GitTrees/linux-2.6-mid-ref/Module.symvers -S vmlinux.o
    >> >> >> make[1]: *** [vmlinux.o] Error 139
    >> >> >> make: *** [vmlinux.o] Error 2
    >> >> >>
    >> >> >> I have looked at the gcc 4.4.4 changelog and I can't see anything
    >> >> >> that should cause this.
    >> >> >>
    >> >> >
    >> >> > Hmm, you need to find which program segfaults here.
    >> >>
    >> >> It's the modpost command run on vmlinux.o. Alan, can you try
    >> >> $ gdb --args scripts/mod/modpost -o Module.symvers -S vmlinux.o
    >> >> (gdb) r
    >> >> (wait for the segfault)
    >> >> (gdb) bt full
    >> >>
    >> >> and post the backtrace?
    >> >
    >> >Don't know if this will help much.
    >> >
    >> >This GDB was configured as "x86_64-redhat-linux-gnu".
    >> >For bug reporting instructions, please see:
    >> ><http://www.gnu.org/software/gdb/bugs/>...
    >> >Reading symbols
    >> >from /home/alan/GitTrees/linux-2.6-mid-ref/scripts/mod/modpost...(no
    >> >debugging symbols found)...done.
    >> >(gdb) r
    >> >Starting
    >> >program: /home/alan/GitTrees/linux-2.6-mid-ref/scripts/mod/modpost -o
    >> >Module.symvers -S vmlinux.o
    >> >
    >> >Program received signal SIGSEGV, Segmentation fault.
    >> >0x0000000000403711 in main ()
    >> >(gdb) bt full
    >> >#0 0x0000000000403711 in main ()
    >> >No symbol table info available.
    >> >
    >> >Trying to get it to compile with debugging info.
    >> >
    >>
    >> Try to append "-g" to HOSTCFLAGS in the top Makefile. ;)
    >
    >Thanks. Tried CFLAGS and that did not work...
    >
    >Here is the backtrace:
    >(gdb) bt full
    >#0 read_symbols (argc=5, argv=0x7fffffffe198) at
    >scripts/mod/modpost.c:1564
    > license = <value optimized out>
    > info = {size = 209695023, hdr = 0x7fffeb263000,
    > sechdrs = 0x7ffff48fcc2c, symtab_start = 0x7ffff7863e2c,
    > symtab_stop = 0x7ffff794341c, export_sec = 37,
    > export_unused_sec = 0, export_gpl_sec = 48,
    > export_unused_gpl_sec = 0, export_gpl_future_sec = 0,
    > strtab = 0x7ffff794341c "", modinfo = 0x0, modinfo_len = 0}
    > sym = <value optimized out>
    > symname = <value optimized out>
    > version = <value optimized out>
    > mod = 0x610010
    >#1 main (argc=5, argv=0x7fffffffe198) at scripts/mod/modpost.c:1999
    > mod = <value optimized out>
    > buf = {p = 0x0, pos = 0, size = 0}
    > kernel_read = <value optimized out>
    > module_read = <value optimized out>
    > dump_write = 0x7fffffffe4ed "Module.symvers"
    > opt = <value optimized out>
    > err = <value optimized out>
    > extsym_iter = <value optimized out>
    > extsym_start = <value optimized out>
    >
    >The line is does not like is:
    >
    > read_symbols(argv[optind++]);
    >
    >Not certain why...

    Hmm, it seems the segfault happens at 'license = get_modinfo(...)'?
    I can't spot any bug around that.

    If I were you, I would do a step by step debug with gdb.

    Thanks!
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2010-06-09 10:35    [W:0.044 / U:0.300 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site