Closed
Bug 853387
Opened 11 years ago
Closed 11 years ago
crash in nsNPAPIPluginInstance::HandleEvent @ libnpgeplugin with Google Earth Plugin (in-process in 32-bit mode) on Google Maps
Categories
(Core Graveyard :: Plug-ins, defect, P2)
Tracking
(firefox19 affected, firefox20+ verified, firefox21+ verified, firefox22+ fixed, firefox23+ verified)
People
(Reporter: scoobidiver, Assigned: benjamin)
References
()
Details
(Keywords: crash, steps-wanted, Whiteboard: [possibly fixed in current Google Earth plugin, version 7.0.3.8542])
Crash Data
Attachments
(3 files)
156.55 KB,
image/png
|
Details | |
1.06 KB,
patch
|
smichaud
:
review+
benjamin
:
approval-mozilla-aurora+
lsblakk
:
approval-mozilla-beta+
|
Details | Diff | Splinter Review |
1.40 KB,
patch
|
Details | Diff | Splinter Review |
With combined signatures, it's #7 top browser crasher in 19.0.2 and #2 in 20.0b5 on Mac OS X. It's a browser crash not a plugin one so no way to know affected versions except with a debug ID matching table. Signature libnpgeplugin.dylib@0x53e1 More Reports Search UUID 8a4eb5af-a967-41ea-aaac-73c7e2130317 Date Processed 2013-03-17 10:11:56 Uptime 551 Last Crash 1.1 weeks before submission Install Age 5.0 hours since version was first installed. Install Time 2013-03-17 05:13:55 Product Firefox Version 20.0 Build ID 20130313170052 Release Channel beta OS Mac OS X OS Version 10.6.8 10K549 Build Architecture x86 Build Architecture Info family 6 model 14 stepping 8 Crash Reason EXC_BAD_ACCESS / KERN_PROTECTION_FAILURE Crash Address 0x6 App Notes AdapterVendorID: 0x1002, AdapterDeviceID: 0x71c5 Processor Notes sp-processor02.phx1.mozilla.com_2251:2008; exploitablity tool: ERROR: unable to analyze dump EMCheckCompatibility True Adapter Vendor ID 0x1002 Adapter Device ID 0x71c5 Frame Module Signature Source 0 libnpgeplugin.dylib libnpgeplugin.dylib@0x53e1 1 libnpgeplugin.dylib libnpgeplugin.dylib@0x99327 2 libnpgeplugin.dylib libnpgeplugin.dylib@0x2deb3 3 libnpgeplugin.dylib libnpgeplugin.dylib@0xac86a 4 XUL nsNPAPIPluginInstance::HandleEvent dom/plugins/base/nsNPAPIPluginInstance.cpp:698 libnpgeplugin.dylib 6697E88D8A4A7540EE3E33A5DC6C6ACC0 More reports at: https://crash-stats.mozilla.com/query/query?product=Firefox&query_search=signature&query_type=contains&query=libnpgeplugin.dylib&do_query=1
Comment 1•11 years ago
|
||
None of the reports i looked at have any entries in the callstack above nsNPAPIPluginInstance::HandleEvent(), so there is no way to tell if there is anything obviously going wrong. Most of the crashes are on OS X 10.6 ~80%, all of them are x86 (probably the Earth plugin is x86?).
Keywords: qawanted,
steps-wanted
Priority: -- → P3
Reporter | ||
Comment 2•11 years ago
|
||
According to comments, searching in Google Maps is enough to reproduce it.
Comment 3•11 years ago
|
||
One interesting thing about these crashes is that the plugin is running in-process: libnpgeplugin.dylib is part of the Google Earth plugin, and nsNPAPIPluginInstance::HandleEvent only calls directly into it when the plugin is running in-process.
Comment 4•11 years ago
|
||
I suspect this should rate higher than a P3 :-)
Comment 5•11 years ago
|
||
Good point, i guess it doesn't make sense to rate it lower due to less available information.
Priority: P3 → P2
Comment 6•11 years ago
|
||
I strongly suspect this is a Google Earth bug, likely triggered by users trying to run it in-process, in 32-bit mode. The crashes happen in Google Earth plugin code. They also start happening on 2012-12-28: bp-0c53f20e-7834-40cd-8e1f-6914f2121128 bp-4df81f7b-a23a-4a0c-95e5-4baaf2121128 bp-c6cac5fe-ada2-465a-89a3-2a1e32121128 bp-e425f71e-14f4-4ea7-9f3b-68e272121128 bp-9d65ba0b-f520-4382-a22d-b406d2121128 bp-d7429e31-57db-48f9-a4bd-8e15a2121128 I suspect this corresponds with the release of a new version of the Google Earth plugin. But it's difficult to check, because I can't find a version release history, and (as best I can tell) Google doesn't allow people to download anything older than the current version. (By the way, there are older crashes on OS X 10.5 whose signature is in libnpgeplugin.dylib. But the lower part of these crash stacks is quite different, so those are probably a different bug.)
Reporter | ||
Comment 7•11 years ago
|
||
(In reply to Steven Michaud from comment #6) > They also start happening on 2012-12-28: You meant 2012-11-28 > I suspect this corresponds with the release of a new version of the Google > Earth plugin. But it's difficult to check, because I can't find a version > release history, and (as best I can tell) Google doesn't allow people to > download anything older than the current version. Based on Wikipedia (for major versions, see also https://en.wikipedia.org/wiki/Google_Earth#Release_timeline): * 7.0.3.8542 on March 2nd 2013 * 7.0.2.8415 on December 13th 2012 Crashes happened in January and February.
Comment 8•11 years ago
|
||
There are two different debug ids for the libnpgeplugin.dylib module in the crash reports from comment #6: 6697E88D8A4A7540EE3E33A5DC6C6ACC0 4F1498497551FAA3E0B67EF16B3E1CD60 So the trigger may not be a new version of the Google Earth plugin. Instead it may be that Google made some change on their Google Earth website to trigger a pre-existing bug in the Google Earth plugin. Note that all the crash reports from comment #6 are from the same build id (20121121075611 on the 18.0 beta channel). But I suspect that's a coincidence: If the problem started with that build, you'd expect the crashes to start from when it was released.
Comment 9•11 years ago
|
||
> Crashes happened in January and February. You mean in 2012? Could you post their crash ids? >> They also start happening on 2012-12-28: > You meant 2012-11-28 Thanks! Sorry :-(
Reporter | ||
Comment 10•11 years ago
|
||
(In reply to Steven Michaud from comment #9) > > Crashes happened in January and February. > You mean in 2012? No in 2013. So it's not caused by the latest minor release on March. Maybe the spike is caused by GE 7.0 released on December 18, 2012.
Comment 11•11 years ago
|
||
(Following up comment #8) > 20121121075611 on the 18.0 beta channel This appears to be FF 18.0 Beta1. There weren't any "release candidates". So there isn't any comparable prior release with which to simulate a possible regression range.
Reporter | ||
Comment 12•11 years ago
|
||
18.0 was a bad release for plugins on Mac (see bug 693892, bug 816442, bug 816445, and bug 828216).
Comment 13•11 years ago
|
||
The last three were because be dropped support for the QuickTime drawing model as of FF 18.0. Crashes caused by this change tended to happen after the user was prompted to restart in 32-bit mode (we still prompted them to do that because we still supported the Carbon event model (which got dropped in FF 19)). It's very hard to believe that's involved here. In other words, it's very hard to believe that the Google Earth plugin was still using the QuickDraw drawing model as recently as November of last year.
Comment 14•11 years ago
|
||
The current version of the Google Earth plugin, which I just downloaded, is 7.0.3.8542. The date on its Info.plist file (where the version information is stored) is 2013-02-27. So presumably it was released on that date or shortly afterwards -- in other words it's probably been out for at least two weeks. The debug id for its libnpgeplugin.dylib module (generated using dump_syms) is 48C2CF2550583F6FA3D112A5D48116C50. (And yes this file is an i386-mode-only binary, so there's only one debug id for it.) I followed Scoobidiver's link from comment #0 and looked at the 10 most recent crash logs. None of them had the same debug id for libnpgeplugin.dylib. So there's a good chance that Google has already fixed this bug in its most recent release of the Google Earth plugin. And so we should be telling people who see this bug to download and install the current version.
Comment 15•11 years ago
|
||
Oops, missed this from comment #7: > * 7.0.3.8542 on March 2nd 2013
Updated•11 years ago
|
Whiteboard: [possibly fixed in current Google Earth plugin, version 7.0.3.8542]
Reporter | ||
Comment 16•11 years ago
|
||
(In reply to Steven Michaud from comment #14) > And so we should be telling people who see this bug to download and install > the current version. It will be done by a blocklist but we need to know the threshold.
Comment 17•11 years ago
|
||
Yes, it makes better sense to do a blocklist. We probably won't get any better information than we have currently. If so we should just blocklist all versions earlier than 7.0.3.8542 -- the current version. By the way, do you know how to get aggregate crash statistics by module name and debug id? Is it possible? If so we should probably wait a bit to ensure that no crashes happen with version 7.0.3.8542.
Reporter | ||
Comment 18•11 years ago
|
||
(In reply to Steven Michaud from comment #17) > By the way, do you know how to get aggregate crash statistics by module name > and debug id? Is it possible? Theoretically, it's in correlations per module version but it's restricted to crash signatures with more than 10 crashes per day and Firefox version which is only true for the aggregate in this case.
Updated•11 years ago
|
Summary: crash in nsNPAPIPluginInstance::HandleEvent @ libnpgeplugin with Google Earth Plugin on Google Maps → crash in nsNPAPIPluginInstance::HandleEvent @ libnpgeplugin with Google Earth Plugin (in-process in 32-bit mode) on Google Maps
Comment 19•11 years ago
|
||
Tracking - we'll see what happens with bug 853658 resolved (Jorge will be staging today).
Comment 20•11 years ago
|
||
This bug seems very similar to, if not identical to, bug 744874. That bug has been very clearly identified as a Google Earth plugin bug.
See Also: → 744874
Assignee | ||
Comment 21•11 years ago
|
||
Why are we running GE in-process? IIRC, we defaulted to in-process plugins on 32-bit because of old plugins running Carbon events or quickdraw graphics, which we couldn't remote. But because we no longer support those modes, can we just make OOPP the default on mac32 as it already is on mac64? And could we even fix this via pref in 20 or even via hotfix in 19? pref("dom.ipc.plugins.enabled.i386.google earth web plug-in.plugin", true); I'm not sure whether that would actually fix the crash, but it should at least mean that only Google Earth crashed, and not all of Firefox. QA, could you please try that pref in Firefox 19 and Firefox 20 betas (running in 32-bit mode) and make sure that Firefox doesn't crash, and report whether Google Earth crashes or not?
Flags: needinfo?
Comment 22•11 years ago
|
||
> pref("dom.ipc.plugins.enabled.i386.google earth web plug-in.plugin", true); > > I'm not sure whether that would actually fix the crash It fixes/fixed the crash at bug 744874. So it would probably fix this one, too.
Flags: needinfo?
Comment 23•11 years ago
|
||
> It fixes/fixed the crash at bug 744874. So it would probably fix this one, too. Oops, this is probably wrong. See bug 744874 comment #25. I still have the old Google Earth plugin version that I used to test bug 744874. I'll check if the plugin still crashes (on the "right" hardware) when run out-of-process.
Comment 25•11 years ago
|
||
(In reply to Benjamin Smedberg [:bsmedberg] from comment #21) > Why are we running GE in-process? IIRC, we defaulted to in-process plugins > on 32-bit because of old plugins running Carbon events or quickdraw > graphics, which we couldn't remote. But because we no longer support those > modes, can we just make OOPP the default on mac32 as it already is on mac64? > > And could we even fix this via pref in 20 or even via hotfix in 19? > > pref("dom.ipc.plugins.enabled.i386.google earth web plug-in.plugin", true); > > I'm not sure whether that would actually fix the crash, but it should at > least mean that only Google Earth crashed, and not all of Firefox. > > QA, could you please try that pref in Firefox 19 and Firefox 20 betas > (running in 32-bit mode) and make sure that Firefox doesn't crash, and > report whether Google Earth crashes or not? I tried installing the Google Earth Plugin I get when I visit the Google Earth search results page. I tried it with 20.0b6 and I have not been able to crash Firefox. What's more, it looks like the plugin runs out of process by default on Mac OS X 10.7.x. I will attach a screenshot of Fx20b6 running, after visiting Google Maps and clicking on the Earth option. It also shows the list of dom.ipc* related preferences, which do not list anything related to Google.
Comment 26•11 years ago
|
||
Reporter | ||
Comment 27•11 years ago
|
||
(In reply to juan becerra [:juanb] from comment #25) > I tried it with 20.0b6 and I have not been able to crash Firefox. Crashes happen with old versions of Google Earth plugin no longer available to download.
Comment 28•11 years ago
|
||
Juan, thought the request could have been clearer, you need to test in 32-bit mode with this pref:
> pref("dom.ipc.plugins.enabled.i386.google earth web plug-in.plugin", true);
And (if possible) you should test on OS X 10.6.8, where most of this bug's crashes have been happening.
You almost certainly *won't* crash with the current Google Earth plugin (7.0.3.8542) in any configuration -- since this bug (almost certainly a Google Earth bug) is (apparently) fixed in that version.
But (very unfortunately) Google doesn't allow the public to download older versions of the plugin to test with.
Comment 29•11 years ago
|
||
Steven can you provide the information requested in comment #21 with the plugin version you have? Or could you place it somewhere I can grab it from, so I can take a look with your suggestions in comment #28?
Flags: needinfo?(manuela.muntean) → needinfo?
Reporter | ||
Comment 30•11 years ago
|
||
(In reply to Steven Michaud from comment #28) > But (very unfortunately) Google doesn't allow the public to download older > versions of the plugin to test with. I found some: http://www.oldapps.com/mac/google_earth.php
Flags: needinfo?
Comment 31•11 years ago
|
||
When running Fx20.0b6 in 32bit mode with the added pref I see the Google Earth plugin run out of process, and I haven't been able to crash it yet on 10.7.x. I'll try 10.6.x in a bit.
Comment 32•11 years ago
|
||
Here's my old version: https://people.mozilla.com/~stmichaud/bmo/googleearth-mac-plugin-intel.6.2.1.6014.dmg
Assignee | ||
Comment 33•11 years ago
|
||
smichaud, the conclusion from the stability meeting today is that we'd like to change this pref for the final FF20 beta that is being built today. I'll also upload a separate patch for trunk to make all plugins use OOPP on x86.
Assignee | ||
Comment 34•11 years ago
|
||
Attachment #729061 -
Flags: review?(smichaud)
Comment 35•11 years ago
|
||
> http://www.oldapps.com/mac/google_earth.php
Note that the version labeled 7.0.2 is actually version 5.2.1.1588.
Updated•11 years ago
|
Attachment #729058 -
Flags: review?(smichaud) → review+
Comment 36•11 years ago
|
||
Comment on attachment 729061 [details] [diff] [review] Patch for trunk: run all plugins OOP by default on x86, rev. 1 This is worthwhile as an experiment, but it's difficult to tell what the blowback will be. We really shouldn't land this, even on trunk, except at the beginning of a development cycle. And it shouldn't be promoted to other branches. Let's do this from a new bug.
Assignee | ||
Comment 37•11 years ago
|
||
Comment on attachment 729058 [details] [diff] [review] Patch for branches: Run google earth OOP, rev. 1 [Approval Request Comment] Bug caused by (feature/regressing bug #): Google Earth User impact if declined: More Firefox crashes Testing completed (on m-c, etc.): minimal manual QA Risk to taking this patch (and alternatives if risky): It's possible that this could harm users where GE earth works now (in process) but somehow fails when run OOP. That seems unlikely, because GE currently works OOP in x86-64 mode. The benefit of a noncrashy Firefox seems worth the risk. String or UUID changes made by this patch: None, default pref change only
Attachment #729058 -
Flags: approval-mozilla-beta?
Attachment #729058 -
Flags: approval-mozilla-aurora?
Comment 38•11 years ago
|
||
Comment on attachment 729058 [details] [diff] [review] Patch for branches: Run google earth OOP, rev. 1 As discussed in Crashkill meeting, this seems like the best way to protect users who are experiencing this crash and we do not expect it will adversely affect (any/many) others. Approving for uplift asap.
Attachment #729058 -
Flags: approval-mozilla-beta?
Attachment #729058 -
Flags: approval-mozilla-beta+
Attachment #729058 -
Flags: approval-mozilla-aurora?
Attachment #729058 -
Flags: approval-mozilla-aurora+
Comment 39•11 years ago
|
||
Just to follow up: in 10.6.x running Fx20b6 in 64bit mode and the latest Google Earth plugin, the plugin doesn't finish loading when going to google maps. The browser doesn't crash. [1] Running Fx in 32bit mode and latest GE plugin, it works. It runs in process but I was not able to crash. It also works if I set the preference and it runs out of process. Using the older GE plugin, I was not able to crash under these two scenarios. It actually seemed to work better, because it always loaded (see 1). In any case, the fix here seems like a good solution.
Comment 40•11 years ago
|
||
For the record, I'm no longer able to reproduce bug 744874 using my STR from bug 744874 comment #7. This is with the old Google Earth plugin (version 6.2.1.6014), of which I'd saved a copy of the installer. I tested with FF 19.0.2 on OS X 10.6.8. I'm not sure what that means, but I don't think it's bad news for this bug.
Assignee | ||
Comment 41•11 years ago
|
||
https://hg.mozilla.org/releases/mozilla-aurora/rev/f0c0f6fe50a0 https://hg.mozilla.org/releases/mozilla-beta/rev/1802d450878a
status-firefox21:
--- → fixed
status-firefox22:
--- → affected
tracking-firefox21:
--- → +
tracking-firefox22:
--- → +
Comment 42•11 years ago
|
||
1) I've tried to reproduce this crash with Firefox 19.0.2 on a Mac OSX 10.6.8 machine in 32-bit mode, but without success, after installing the plug-in from comment 35 and manually adding the pref("dom.ipc.plugins.enabled.i386.google earth web plug-in.plugin", true) (because the pref didn't exist). 2) With Firefox 20 beta 7 (build ID: 20130325214615), on the same machine and following the same steps as above, I get the same behavior. (no crash) 3) With Firefox 20 beta 7 and Google Earth Plug-in 7.0 + the preference set to true, I don't get any crashes either. In all 3 scenarios, the plugin finished loading when going to Google maps site.
Comment 43•11 years ago
|
||
Manuela, I think the intent of the patch was not necessarily to be a "fix" for the crash but to get Google Earth running in its own process. This way when GE hangs or crashes it won't bring down Firefox. To call this verified I think it's sufficient to confirm that the plugin runs in it's own process in the latest Beta and Aurora builds. Can you please confirm this to be true?
Comment 44•11 years ago
|
||
I can confirm that Google Earth Plug-in 7.0 is running in its own process, for both latest Aurora (build ID: 20130326042012) and Beta (Firefox 20 beta 7, build ID: 20130325214615) on a Mac OSX 10.6.8 machine, with the pref("dom.ipc.plugins.enabled.i386.google earth web plug-in.plugin", true). In the Activity Monitor I have these 3 processes: - Firefox - Google Earth for Plugin - Firefox Plugin Process (Google Earth Plug-in)
Comment 45•11 years ago
|
||
Now that we've merged, this is going to need to be uplifted to Aurora 22.
status-firefox23:
--- → affected
tracking-firefox23:
--- → +
Comment 46•11 years ago
|
||
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:21.0) Gecko/20100101 Firefox/21.0 Build ID: 20130401192816 Google Earth Plugin version: 7 Verified as fixed on the latest Firefox 21 beta 1 (used the instructions from Comment 43).
Comment 47•11 years ago
|
||
this signature is no longer appearing in top crash lists.
Assignee | ||
Comment 48•11 years ago
|
||
smichaud, review-ping?
Comment 49•11 years ago
|
||
Comment on attachment 729061 [details] [diff] [review] Patch for trunk: run all plugins OOP by default on x86, rev. 1 I was waiting for you to open a new bug on this. Now I've done so myself -- bug 863830.
Attachment #729061 -
Flags: review?(smichaud)
Comment 50•11 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/edda3c650b51
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla23
Comment 51•11 years ago
|
||
Comment on attachment 729058 [details] [diff] [review] Patch for branches: Run google earth OOP, rev. 1 Ben tells me that this should land on Aurora (again) for Fx22.
Attachment #729058 -
Flags: approval-mozilla-aurora+ → approval-mozilla-aurora?
Assignee | ||
Comment 52•11 years ago
|
||
Comment on attachment 729058 [details] [diff] [review] Patch for branches: Run google earth OOP, rev. 1 I don't think reapproval is necessary in this case.
Attachment #729058 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 54•11 years ago
|
||
(In reply to Manuela Muntean [:Manuela] [QA] from comment #44) > I can confirm that Google Earth Plug-in 7.0 is running in its own process, > for both latest Aurora (build ID: 20130326042012) and Beta (Firefox 20 beta > 7, build ID: 20130325214615) on a Mac OSX 10.6.8 machine, with the > pref("dom.ipc.plugins.enabled.i386.google earth web plug-in.plugin", true). > > In the Activity Monitor I have these 3 processes: > > - Firefox > - Google Earth for Plugin > - Firefox Plugin Process (Google Earth Plug-in) Verified fixed FF 23b5, Mac OS X 10.8.3.
Status: RESOLVED → VERIFIED
Updated•2 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•