Crash at startup (recent regression)

Bug #1196638 reported by Mikko Rantalainen
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
firefox (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

I believe this crashing has started since last update.

Steps to reproduce:

$ firefox
Segmentation fault (core dumped)

For some reason, apport does not run for this crash. I also tried

$ firefox -g
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /usr/lib/firefox/firefox...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/lib/firefox/firefox
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff3b5747f in std::_Rb_tree_iterator<std::pair<std::string const, base::Histogram*> > std::_Rb_tree<std::string, std::pair<std::string const, base::Histogram*>, std::_Select1st<std::pair<std::string const, base::Histogram*> >, std::less<std::string>, std::allocator<std::pair<std::string const, base::Histogram*> > >::_M_insert_<std::pair<std::string const, base::Histogram*> >(std::_Rb_tree_node_base const*, std::_Rb_tree_node_base const*, std::pair<std::string const, base::Histogram*>&&) ()
   from /usr/lib/firefox/libxul.so
(gdb) bt
#0 0x00007ffff3b5747f in std::_Rb_tree_iterator<std::pair<std::string const, base::Histogram*> > std::_Rb_tree<std::string, std::pair<std::string const, base::Histogram*>, std::_Select1st<std::pair<std::string const, base::Histogram*> >, std::less<std::string>, std::allocator<std::pair<std::string const, base::Histogram*> > >::_M_insert_<std::pair<std::string const, base::Histogram*> >(std::_Rb_tree_node_base const*, std::_Rb_tree_node_base const*, std::pair<std::string const, base::Histogram*>&&) ()
   from /usr/lib/firefox/libxul.so
#1 0x00007ffff3b5765e in std::_Rb_tree_iterator<std::pair<std::string const, base::Histogram*> > std::_Rb_tree<std::string, std::pair<std::string const, base::Histogram*>, std::_Select1st<std::pair<std::string const, base::Histogram*> >, std::less<std::string>, std::allocator<std::pair<std::string const, base::Histogram*> > >::_M_insert_unique_<std::pair<std::string const, base::Histogram*> >(std::_Rb_tree_const_iterator<std::pair<std::string const, base::Histogram*> >, std::pair<std::string const, base::Histogram*>&&) ()
   from /usr/lib/firefox/libxul.so
#2 0x00007ffff3b57758 in ?? () from /usr/lib/firefox/libxul.so
#3 0x00007ffff3b57f60 in ?? () from /usr/lib/firefox/libxul.so
#4 0x00007ffff3758794 in ?? () from /usr/lib/firefox/libxul.so
#5 0x00007ffff3758923 in ?? () from /usr/lib/firefox/libxul.so
#6 0x00007ffff375a46e in ?? () from /usr/lib/firefox/libxul.so
#7 0x0000555555556782 in ?? ()
#8 0x00007ffff701f76d in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#9 0x00005555555567dd in _start ()

So the code seems to crash building some tree structure (parsing history perhaps?)

$ apt-cache policy firefox
firefox:
  Installed: 22.0+build2-0ubuntu0.12.04.1
  Candidate: 22.0+build2-0ubuntu0.12.04.1
  Version table:
 *** 22.0+build2-0ubuntu0.12.04.1 0
        500 http://archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
        500 http://archive.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
        100 /var/lib/dpkg/status
     11.0+build1-0ubuntu4 0
        500 http://archive.ubuntu.com/ubuntu/ precise/main amd64 Packages

$ lsb_release -a
LSB Version: core-2.0-amd64:core-2.0-noarch:core-3.0-amd64:core-3.0-noarch:core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-noarch:core-4.0-amd64:core-4.0-noarch:cxx-3.0-amd64:cxx-3.0-noarch:cxx-3.1-amd64:cxx-3.1-noarch:cxx-3.2-amd64:cxx-3.2-noarch:cxx-4.0-amd64:cxx-4.0-noarch:desktop-3.1-amd64:desktop-3.1-noarch:desktop-3.2-amd64:desktop-3.2-noarch:desktop-4.0-amd64:desktop-4.0-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.0-amd64:graphics-3.0-noarch:graphics-3.1-amd64:graphics-3.1-noarch:graphics-3.2-amd64:graphics-3.2-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-3.2-amd64:printing-3.2-noarch:printing-4.0-amd64:printing-4.0-noarch:qt4-3.1-amd64:qt4-3.1-noarch
Distributor ID: Ubuntu
Description: Ubuntu 12.04.2 LTS
Release: 12.04
Codename: precise

The system was originally installed from 9.10 install media and later updraded to 10.04 LTS and then upgraded to 12.04 LTS about a month ago. I have had to fix other issues by hand after the latest upgrade so this *may* be upgrade related issue.

Revision history for this message
Mikko Rantalainen (mira) wrote :

The problem depends on firefox profile because following can successfully launch firefox (with empty profile):

$ mkdir -p tmp/firefox-test
$ HOME=$HOME/tmp/firefox-test firefox

Revision history for this message
penalvch (penalvch) wrote :

Mikko Rantalainen, thank you for reporting this and helping make Ubuntu better. However, your crash report is missing. Please follow these instructions to have apport report a new bug about your crash that can be dealt with by the automatic retracer. First, execute at a terminal:
cd /var/crash && sudo rm * ; sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get -y install firefox-dbg && sudo service apport start force_start=1

If you are running the Ubuntu Stable Release you might need to enable apport in /etc/default/apport and restart.

Now reproduce the crash, then open your file manager, navigate to your /var/crash directory and open the crash report you wish to submit.
If this fails you will have to open a terminal and file your report with 'ubuntu-bug /var/crash/_my_crash_report.crash' where _my_crash_report.crash is the crash you would like to report. If you get an error that you aren't allowed to access this report you will have to file it with 'sudo ubuntu-bug /var/crash/_my_crash_report.crash'. If you run the command against the crash report and a window pops up asking you to report this, but then never opens a new report, you would be affected by https://bugs.launchpad.net/ubuntu/+source/apport/+bug/994921 . In order to WORKAROUND this, one would need to open the following file via a command line:
gksudo gedit /etc/apport/crashdb.conf

and comment out the line:
'problem_types': ['Bug', 'Package'],

by changing it to:
# 'problem_types': ['Bug', 'Package'],

Save, close, and try to file the crash report again via:
ubuntu-bug /var/crash/_my_crash_report.crash

Please follow https://wiki.ubuntu.com/MozillaTeam/Bugs when you file this crash report so the necessary information is provided.

I'm closing this bug report since the process outlined above will automatically open a new bug report which can then dealt with more efficiently.

Thank you for your understanding.

Helpful bug reporting tips:
https://wiki.ubuntu.com/ReportingBugs

Changed in firefox (Ubuntu):
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.