Closed Bug 689121 Opened 9 years ago Closed 8 years ago

Plugin container crash for flash stress test (corner case) - opening same content in 10 tabs

Categories

(Core :: Plug-ins, defect)

9 Branch
defect
Not set
minor

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: vladmaniac, Unassigned)

Details

(Whiteboard: [8.0b1][10.0b1])

Crash Data

Build ID: Mozilla/5.0 (X11; Linux i686; rv:9.0a1) Gecko/20110923 Firefox/9.0a1

Prerequisites: 
Firefox clean profile 
No add-ons installed 

Steps: 
1. Open https://github.com/lojjic/PIE/commits/master in 10 different tabs 

Behavior: 
Plugin container crashes 

Crash reports: 
https://crash-stats.mozilla.com/report/index/bp-2f824fa7-c5ab-4271-89d9-1e0932110922 

Graphic details: 
Tungsten Graphics, Inc -- Mesa DRI Intel(R) G41 GEM 20100330 DEVELOPMENT x86/MMX/SSE2

Plugin Version: 
Shockwave Flash 10.3 r181

Hardware acceleration: enabled/disabled -> same result

Possible cause: 
Github uses flash content for "copy" event feature. So, opening 10 instances of that github link addresses aprox 50 x 10 = 500 flash objects (flash buttons) 
This makes it a corner case, but giving the situation of a dev which uses github, it's very possible to have 10 github tabs open when working - so I would clarify this bug as a minor, but still, a problem which needs solving.
I got this to reproduce on Mac as well though more intensive. I opened 15 tabs and had to keep switching between them a few times before it crashed.

Tagging this with [8.0b1] since I can repro it on the most recent beta.
OS: Linux → All
Hardware: x86 → All
Whiteboard: [8.0b1]
It seems that this issue was not addressed by anyone yet 

cc-ing vlad g to see if this is still reproducible. 

vlad g - can you or someone help out?
Mozilla/5.0 (Windows NT 6.1; rv:10.0) Gecko/20100101 Firefox/10.0

I got the plugin container crash on Win 7 32 bit using Firefox 10beta1:

Steps to reproduce:
1. Go to youtube.com and open some videos in new tabs (~5 videos)
2. Go to Vimeo.com and open some videos in new tabs (~5 videos)
3. Go to http://www.bing.com/videos/browse and open some videos in new tabs (~5 videos)
3. Go to trilulilu.ro and open some videos and audios in new tabs (about 5 videos, 5 audios)
4. In Options, select "Show my windows and tabs from last time"
5. Close firefox
6. Restart firefox and press play button for Vimeo videos

Result: Firefox becomes slow and after a while (10-15 minutes) plugin container crashes. Instead of videos "Adobe Flash plugin has crashed. reload the page to try again" is displayed.


Problem signature (in plugin container crash window):
  Problem Event Name:	APPCRASH
  Application Name:	plugin-container.exe
  Application Version:	10.0.0.4372
  Application Timestamp:	4ef27c6c
  Fault Module Name:	mozalloc.dll
  Fault Module Version:	10.0.0.4372
  Fault Module Timestamp:	4ef26a02
  Exception Code:	80000003
  Exception Offset:	0000193d
  OS Version:	6.1.7600.2.0.0.256.1
  Locale ID:	1033
  Additional Information 1:	0a9e
  Additional Information 2:	0a9e372d3b4ad19135b953a78882e789
  Additional Information 3:	0a9e
  Additional Information 4:	0a9e372d3b4ad19135b953a78882e789

Flash version:
Shockwave Flash  Version: 11.1.102.55
Whiteboard: [8.0b1] → [8.0b1][10.0b1]
How wide spread is this issue? Other platforms? Other GPUs?
Crash Signature: [@ hang | linux-gate.so@0x424]
Environment 1: Win 7 32 bit, integrated Intel video card
*Firefox versions: 3.6.25, 4.0.1, 5.0, 8.0.1
*Flash version: 9.0.16.0  for 3.6, 4 and 5(had installed 11.1.102.55 simultanuous, but Firefox used the 9 version); 11.1.102.55 for 8
*What I did: opened multiple tabs with videos from diffent websites (as described in comment #3)
*Behaviour: Firefox responded slow, CPU usage went to 98-100%. After some time, if I closed Firefox, plugin container crashed after a few seconds:
*Problem signature:
  Problem Event Name:    APPCRASH
  Application Name:    plugin-container.exe
  Application Version:    2.0.1.4120
  Application Timestamp:    4da6a99c
  Fault Module Name:    coreclr.dll
  Fault Module Version:    4.0.60831.0
  Fault Module Timestamp:    4e5d6c64
  Exception Code:    c00000fd
  Exception Offset:    00001463
  OS Version:    6.1.7600.2.0.0.256.1
  Locale ID:    1033
  Additional Information 1:    f60a
  Additional Information 2:    f60acbcdb6e7d96ca0d808133c3b81c6
  Additional Information 3:    eccb
  Additional Information 4:    eccba1d42605e3077d939c83aeb7e7a0

*Firefox 7.0.1: performed same steps as above and plugin container crashed while browser was still running
*Flash version: 11.1.102.55

*Firefox 10.0 beta 3: performed same steps as above and Adobe Flash plugin crashed after a short while (less than 5 minutes); reloaded some pages where flash crashed and restarted Firefox; plugin container didn't crash
*Flash version: 11.1.102.55

Environment2: Mac OS X 10.6, integrated Intel GMA 950
*Firefox : 10.0 beta 3
*What I did: opened multiple tabs with videos from diffent websites (as described in comment #3) and the link from comment #0 in 10 tabs
*Behaviour: Firefox responded slow, but no crash occured
I tried to reproduce the plugin container crash also on Ubuntu and Win XP in the bug but I had no success. All I got was slow responsiveness of browser and slow video loading/playing but no crash. 
Only on Ubuntu, after I closed the the browser the process remained running and warnings were displayed in the terminal: 

(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_type_hint: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_decorated: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GtkWidget' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_widget_get_toplevel: assertion `GTK_IS_WIDGET (widget)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `<invalid>' in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_type_hint: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `<invalid>' in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_decorated: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `<invalid>' in cast to `GtkWidget' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_widget_get_toplevel: assertion `GTK_IS_WIDGET (widget)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_type_hint: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_decorated: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWidget' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_widget_get_toplevel: assertion `GTK_IS_WIDGET (widget)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_type_hint: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_decorated: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWidget' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_widget_get_toplevel: assertion `GTK_IS_WIDGET (widget)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_type_hint: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWindow' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_window_get_decorated: assertion `GTK_IS_WINDOW (window)' failed 
(<unknown>:5065): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkWidget' 
(<unknown>:5065): Gtk-CRITICAL **: IA__gtk_widget_get_toplevel: assertion `GTK_IS_WIDGET (widget)' failed 
(<unknown>:5065): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed 

Mozilla/5.0 (Windows NT 5.1; rv:10.0) Gecko/20100101 Firefox/10.0 
Mozilla/5.0 (X11; Linux i686; rv:10.0) Gecko/20100101 Firefox/10.0
Mihaela, can you try testing again on Firefox 8.0 to see if you see any different behaviour? Also, see if you can test this on similar hardware to what Vlad reported in comment 0.

Thanks
(In reply to Anthony Hughes, Mozilla QA (irc: ashughes) from comment #7)
> Mihaela, can you try testing again on Firefox 8.0 to see if you see any
> different behaviour? Also, see if you can test this on similar hardware to
> what Vlad reported in comment 0.
> 
> Thanks

I have tested with 
Mozilla/5.0 (X11; Linux i686; rv:14.0) Gecko/20120420 Firefox/14.0a1

Built from http://hg.mozilla.org/mozilla-central/rev/22bfdebf5cae 

and this is no longer reproducible. 
Can anyone confirm or infirm this? Would be helpful since I'm trying to rule out this issue in fixing bug 708270. Thanks!
I'm resolving this as WFM due to comment #8 and us not having any reports with hangs in linux-gate.so in the last 4 weeks.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.