[Bug gcov-profile/64123] New: [5 Regression] Instrumented Firefox segfaults on start
trippels at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Nov 30 12:10:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64123
Bug ID: 64123
Summary: [5 Regression] Instrumented Firefox segfaults on start
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: gcov-profile
Assignee: unassigned at gcc dot gnu.org
Reporter: trippels at gcc dot gnu.org
Building Firefox with PGO results in a segfault in the instrumented
browser:
markus@x4 bin % gdb ./firefox
Reading symbols from ./firefox...done.
(gdb) set follow-fork-mode parent
(gdb) run
Starting program: /var/tmp/moz-build-dir/dist/bin/firefox
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Loading JavaScript value pretty-printers; see js/src/gdb/README.
If they cause trouble, type: disable pretty-printer .* SpiderMonkey
[New Thread 0x7fffe7caa700 (LWP 17887)]
[Thread 0x7fffe7caa700 (LWP 17887) exited]
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7429fdd in fread () from /lib/libc.so.6
(gdb) bt
#0 0x00007ffff7429fdd in fread () from /lib/libc.so.6
#1 0x00007ffff7feff59 in gcov_read_words (words=words@entry=2) at
../../../gcc/libgcc/../gcc/gcov-io.c:518
#2 0x00007ffff7ff055e in __gcov_read_counter () at
../../../gcc/libgcc/../gcc/gcov-io.c:555
#3 0x00007ffff7fefc8d in gcov_get_counter () at
../../../gcc/libgcc/libgcov.h:316
#4 __gcov_merge_add (counters=0x7ffff7ff4a10
<__gcov0._Z30mozalloc_set_oom_abort_handlerPFvmE>, n_counters=<optimized out>)
at ../../../gcc/libgcc/libgcov-merge.c:56
#5 0x00007ffff1f2a736 in merge_one_data (crc32=3590671895,
eof_pos_p=<synthetic pointer>, summary_pos_p=<synthetic pointer>,
this_prg=0x7fffffff8620, prg_p=0x7fffffff9df0,
gi_ptr=0x7ffff7ff4540, filename=0x48fb70
"/var/tmp/moz-build-dir/memory/mozalloc/Unified_cpp_memory_mozalloc0.gcda") at
../../../gcc/libgcc/libgcov-driver.c:472
#6 dump_one_gcov (all_prg=<synthetic pointer>, this_prg=0x7fffffff8620,
crc32=3590671895, run_counted=0, gf=<synthetic pointer>, gi_ptr=0x7ffff7ff4540)
at ../../../gcc/libgcc/libgcov-driver.c:787
#7 gcov_do_dump (list=<optimized out>, run_counted=0) at
../../../gcc/libgcc/libgcov-driver.c:846
#8 0x00007ffff1f2aab2 in __gcov_dump_one (root=root@entry=0x7ffff7ff5a80
<__gcov_root>) at ../../../gcc/libgcc/libgcov-driver.c:858
#9 0x00007ffff1f2acd8 in __gcov_dump_int () at
../../../gcc/libgcc/libgcov-interface.c:164
#10 0x00007ffff1f2ab7f in __gcov_flush () at
../../../gcc/libgcc/libgcov-interface.c:88
#11 0x00007ffff1f28bc6 in __gcov_fork () at
../../../gcc/libgcc/libgcov-interface.c:179
#12 0x00007ffff0fc4698 in fire_glxtest_process() () from
/var/tmp/moz-build-dir/dist/bin/libxul.so
#13 0x00007ffff0fb7ab2 in XREMain::XRE_mainInit(bool*) () from
/var/tmp/moz-build-dir/dist/bin/libxul.so
#14 0x00007ffff0fbdda3 in XREMain::XRE_main(int, char**, nsXREAppData const*)
() from /var/tmp/moz-build-dir/dist/bin/libxul.so
#15 0x00007ffff0fbe47b in XRE_main () from
/var/tmp/moz-build-dir/dist/bin/libxul.so
#16 0x0000000000404e59 in do_main(int, char**, nsIFile*) [clone .constprop.0]
()
#17 0x0000000000403b2f in main ()
(gdb) up
#1 0x00007ffff7feff59 in gcov_read_words (words=words@entry=2) at
../../../gcc/libgcc/../gcc/gcov-io.c:518
518 excess = fread (gcov_var.buffer + gcov_var.length,
(gdb) l
513 #else
514 if (gcov_var.length + words > gcov_var.alloc)
515 gcov_allocate (gcov_var.length + words);
516 excess = gcov_var.alloc - gcov_var.length;
517 #endif
518 excess = fread (gcov_var.buffer + gcov_var.length,
519 1, excess << 2, gcov_var.file) >> 2;
520 gcov_var.length += excess;
521 if (gcov_var.length < words)
522 {
More information about the Gcc-bugs
mailing list