Multi-Process Plugins on By Default
Wednesday, January 27th, 2010Out-of-process plugins (OOPP) are now on by default in mozilla-central! Starting tomorrow morning, the mozilla-central nightly builds will load Flash and all other plugins in a separate process by default (on Windows and Linux). The Electrolysis team would love for people to test any plugins on their system, especially less-popular plugins.
Since we are moving relatively quickly with multi-process plugins, there are a few known issues to be aware of:
- The plugin-crash UI is not finished. The current UI is just a non-localized dialog so that we can get crash reports from nightly testers. This will be changed soon!
- On Windows, tearing/repainting issues when scrolling, bug 535295
- On Linux, compiz effects and Flash don’t work together on some systems, bug 535612
- On Windows, selecting “Print” option in Flash may lock up Firefox, bug 538918
- On Windows, hulu won’t switch to full-screen mode, bug 539658
- On Linux with GTK+-2.18 or later, GDK assertions and a fatal XError, bug 540197
- Firefox-process crashes at NPObjWrapper_NewResolve with silverlight and sometimes Flash, bug 542263
If you discover crashes while running nightlies, please make sure you submit them, and check about:crashes for the crash ID and signature. We could use help making sure plugin-related crashes and instability are filed and tracked by searching for signatures here and filing bugs in the Core:Plug-Ins component.
If your browser hangs, you can probably recover by killing the mozilla-runtime process in the Windows task manager or via `kill` on Linux. If you are a developer with a debugger, please use the Mozilla symbol server and get stacks for both the Firefox process and the mozilla-runtime process and file a bug.
In some cases, it may be useful to the Electrolysis developers if you obtain a plugin log, which is a log of calls made between the plugin and the browser. Instructions for obtaining the log are available here.
I am very excited that we’ve made it this far, and I look forward to our next milestone release, which will backport these changes to the 1.9.2 release in preparation for Firefox Lorentz.
If for some reason you need to disable multi-process plugins, set the pref dom.ipc.plugins.enabled to false.