I think this started since the last Firefox update a few days ago, but I might be mistaken. The first time I noticed the problem was a few days ago anyway.
What I do:
- Click the Firefox icon
- Wait. Nothing appears on my screen, while Firefox normally started in about three seconds.
- Look in the system monitor; there is no load whatsoever. Firefox process is running.
- Look in iotop; there is no load whatsoever.
firefox -new-window about:blankwhich opens a window like nothing odd is going on.
- Close that window again. Firefox process remains open.
- Use Chromium for the time being.
- After about 5 to 10 minutes, Firefox opens by itself.
Running Firefox from the command line offers no info as to why it's taking so long. The only warning it gives is:
(process:3543): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed
But this also happens when Firefox starts normally. It does not seem related to the issue.
Today I tried running Firefox with gdb. I'm by no means gdb expert and only used it once to provide someone else info about his application which was not working. So I ran
firefox --debug, typed
start at the (gdb) prompt, and got the following output (
# denotes a comment added by me):
luc@luc-laptop2 ~ $ firefox --debug GNU gdb (GDB) 188.8.131.5230417-cvs-ubuntu Copyright (C) 2013 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://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/lib/firefox/firefox...(no debugging symbols found)...done. (gdb) start Function "main" not defined. Make breakpoint pending on future shared library load? (y or [n]) n 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". [New Thread 0x7fffe9b17700 (LWP 3386)] [Thread 0x7fffe9b17700 (LWP 3386) exited] (process:3385): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed [New Thread 0x7fffe9b17700 (LWP 3389)] [New Thread 0x7fffe2cff700 (LWP 3390)] [New Thread 0x7fffe1ce7700 (LWP 3391)] [New Thread 0x7fffe0eff700 (LWP 3392)] [New Thread 0x7fffe06fe700 (LWP 3393)] [New Thread 0x7fffdfbff700 (LWP 3394)] [New Thread 0x7fffde9ff700 (LWP 3395)] [New Thread 0x7fffdd0ff700 (LWP 3396)] [New Thread 0x7fffdc4ff700 (LWP 3397)] [New Thread 0x7fffdb18e700 (LWP 3398)] [New Thread 0x7fffda781700 (LWP 3399)] [New Thread 0x7fffd9f80700 (LWP 3401)] [New Thread 0x7fffd90ff700 (LWP 3402)] [New Thread 0x7fffd88fe700 (LWP 3403)] [New Thread 0x7fffd80fd700 (LWP 3404)] [New Thread 0x7fffd78fc700 (LWP 3405)] [New Thread 0x7fffd67ff700 (LWP 3406)] [Thread 0x7fffd67ff700 (LWP 3406) exited] [Thread 0x7fffdd0ff700 (LWP 3396) exited] [New Thread 0x7fffdd0ff700 (LWP 3407)] [Thread 0x7fffdd0ff700 (LWP 3407) exited] [New Thread 0x7fffd67ff700 (LWP 3418)] [New Thread 0x7fffc62bb700 (LWP 3419)] [New Thread 0x7fffdd0ff700 (LWP 3420)] [New Thread 0x7fffc5aff700 (LWP 3421)] [New Thread 0x7fffc52fe700 (LWP 3422)] [Thread 0x7fffd67ff700 (LWP 3418) exited] [Thread 0x7fffc52fe700 (LWP 3422) exited] [New Thread 0x7fffc4afd700 (LWP 3423)] [New Thread 0x7fffd67ff700 (LWP 3424)] [New Thread 0x7fffc52fe700 (LWP 3425)] [New Thread 0x7fffc42fc700 (LWP 3426)] [Thread 0x7fffd67ff700 (LWP 3424) exited] [Thread 0x7fffc52fe700 (LWP 3425) exited] [Thread 0x7fffc42fc700 (LWP 3426) exited] # Up to here it took a long time Entered ModifyHeaders.initConfigFile()[New Thread 0x7fffc52fe700 (LWP 3428)]
At this point I was asked for my master password, though still no browser window had appeared. At least a full minute passed by now. This game of starting and exiting threads goes on for a while, adding a few lines of output per minute, until it eventually starts.
As said, when I run
firefox -new-window from another console, a browser window opens instantly. Everything is loaded and works. After browsing in that window for a while (or just waiting a while, that works too), another browser window appears, I guess the one it has been trying to start all this time.
This seems to happen randomly. Most of the time Firefox starts normally within 2-3 seconds like it always has. Also after a reboot, the problem does not consistently occur. However when it does happen, using
killall firefox and trying again doesn't help; it will keep starting slowly until it fully started once.
Linux Mint 15 Cinnamon; 3.8.0-19-generic #30-Ubuntu SMP x86_64; Firefox 23 from the Mint repository. Add-ons: Adblock Plus, Bugmenot, Cookies manager+, Cookies Ok, Firebug, Firegestures, Geolocater, Modify Headers, NO Google Analytics, Open Image In New Tab, Self-Destructing Cookies, Stylish (unused really), Tab Auto Reload, Tab Wheel Scroll, Tamper Data, User Agent Changer.
Plugins: Cinnamon Integration, DivX® Web Player, IcedTea-Web Plugin, QuickTime Plug-in, VLC Multimedia Plugin, Windows Media Player Plug-in 10.
Any ideas what this might be, or is there any additional information you need?
Edit: Just had it again. It seems it happens after not using Firefox for a few hours (system was turned off), and Firefox has a few sockets open that have the status SYN_SENT. I've noticed that on this unsecured WLAN network, before you complete the captive portal, any packets to port!=80 will timeout. That might be it.
Also my workaround with
firefox -new-window didn't work until it asked me for my master password (I guess for syncing). Still no window at that moment so it's faster than waiting all the way, but it took 4 minutes anyway.
When it happens again, I'll try disconnecting from the wireless network, killall firefox, and try again.