Slashdot Mirror


Firefox Lorentz Keeps Plugin Crashes Under Control

pastababa writes "A beta of the Firefox Lorentz project is now available for download and public testing. Eming reports Firefox 'Lorentz' provides uninterrupted browsing for Windows and Linux users when there is a crash in plugins. Plugins run in a separate process from the browser. If a plugin crashes it will not crash the browser, and unresponsive plugins are automatically restarted. The process-isolation feature has been in Google's Chrome from the beginning. Chrome sandboxes individual tabs, and the crash of one tab does not affect the running of the rest of Chrome browser. Firefox currently isolates only Adobe Flash, Apple Quicktime, and Microsoft Silverlight, but will eventually isolate all plugins running on a page. Mozilla encourages users to test Firefox 'Lorentz' on their favorite websites. Users who install Firefox 'Lorentz' will eventually be automatically updated to a future version of Firefox 3.6 in which this feature is included."

20 of 115 comments (clear)

  1. Will this completely prevent all crashes? by uvajed_ekil · · Score: 3, Informative

    Hmm, Google Chrome already handles plugins this way, but one flash-heavy site I know delivers a lot of streaming video and absolutely will crash either Firefox or Chrome in linux (I use Mint, mainly) without fail, if given enough time, Gnome or KDE. Crash as in the entire browser becomes unresponsive and must force-close. After it did this to Firefox a few times I tried Chrome, with the same result. Everything will be fine for a few minutes, sometimes up to an hour or so, then the whole browser will die. Haven't tried IE, tried Firefox with Windows 7 and had the same thing happen. I will certainly look into anything that prevents crashes for Firefox, since I strongly prefer it to every other browser I've tried, since most of the time it works perfectly.

    --
    This is a hacked account, for which the owner can not be held responsible.
    1. Re:Will this completely prevent all crashes? by Anonymous Coward · · Score: 3, Informative

      If you see the same problems in a development Firefox build, please file a bug report against Core::Plugins at bugzilla.mozilla.org. We'd love to figure out what's wrong and fix it.

  2. Re:Using it now by The+MAZZTer · · Score: 5, Informative

    I didn't think it autorestarted plugins. They even provided a reason (probably the same reason Google did it)... current webpages will not expect plugins to restart. And because it's possible for Flash to make JS calls etc this could lead to side effects and page breaking, I think they thought it was just best to reload the page so JS restarts too. Of course I read this on a blog a few weeks back, they could have changed their minds?

  3. Re:Ugh, another Chrome story by Anonymous Coward · · Score: 2, Informative

    Eh?

    Chrome sailed past 1.0 (on Windows) years ago. Look for the word "beta" in the About dialog (or anywhere else); you won't find it.

    Even on Linux and MacOS, it's going to be released as a stable in a couple of weeks, and even that distinction is mostly a formality. And they haven't used the word "beta" in over six months, either (and are also in-step with the version numbering used for Windows builds).

  4. It's simple by Anonymous Coward · · Score: 0, Informative

    try
    {
            callpluginfunction();
    }
    catch (...)
    {
            whoops();
    }

  5. Re:Ugh, another Chrome story by Anonymous Coward · · Score: 1, Informative

    That's for linux version and mac which development started much later. On the windows download, beta doesn't appear unless except for the beta builds (dev versions). I'm pretty sure google redirects you on initial page load to the platform your browser says it is on. So yeah, for google, chrome is does have what they consider a stable release at least in the windows platform.

  6. Re:About time by zero-point-infinity · · Score: 3, Informative

    Konqueror has run flash (and more generally nsplugins) in a separate process since before Chrome was even a rumour. I used to run Konqueror as my primary browser and when I stopped using it I was surprised to discover that other browsers didn't run flash as a separate process.

  7. Re:How is this new? by Anonymous Coward · · Score: 1, Informative

    I am already logged in, but I get 503 errors whenever I try to view a user page.

  8. Plugins, not extensions! by Protoslo · · Score: 3, Informative

    Firefox currently isolate [sic] only Adobe Flash, Apple Quicktime and Microsoft Silverlight, but will eventually isolate all plugins running on a page.

    The quote emphasizes that Lorentz affects only plugins, not extensions, a distinction that seems to be escaping many posters.

    I've had flash behave pretty screwily short of crashing, so this might be nicer if it included a mechanism to manually stop & restart plugins. Perhaps it will expose API allowing other add-ons to do so.

    The plugin that gives me by far the most trouble (on Windows) is Adobe Acrobat Reader. I can already restart that (by killing the process) without crashing firefox.

    1. Re:Plugins, not extensions! by Protoslo · · Score: 2, Informative

      My earlier reading of the comments was unfair, the vast majority of posters seem quite clear on what a plugin is. Yay, slashdot!

  9. Re:No restart on plugin installtion/update? by iammani · · Score: 2, Informative

    Mmmm are you sure not talking about the annoying Extension (extensions as in adblock, betterprivacy) updates? Because I have almost never be annoyed by any plugin installation/update (Except when I installed adobe flash on windows, when it wanted me to restart all browsers to start installation).

  10. Windows and Linux - not Mac by 93+Escort+Wagon · · Score: 2, Informative

    There appears to be a download for Mac available right at the same link - but from the FAQ:

    2. Why aren't multi-process plugins available on Mac?

    Mozilla is working on making multi-process plugins available on Mac. Because of architectural differences, the code is not ready for beta testing.

    --
    #DeleteChrome
  11. Re:Why processes and not threads? by Cobra_666 · · Score: 5, Informative

    Separate address spaces. When a thread crashes, the whole process goes down. If separate process dies, the browser should still be intact.

  12. Chrome's stability is oversold by thaig · · Score: 2, Informative

    I'm using it now and I like it, but Chrome is not stable for me.

    It's problem is that it gets "stuck" in flash in such a way that nothing on my system can use the sound card.

    I can kill off all the tabs but there's still a chrome process running and until I kill that manually I can't play any music.

    I find this an incredible nuisance. Firefox has the same problem but when I kill it it's gone - no processes left behind.

    --
    This is all just my personal opinion.
  13. Re:Why processes and not threads? by kangsterizer · · Score: 3, Informative

    yeah that's also why chrome uses so much memory, and also, processes are be nature slightly slower to communicate since you can't just lock and access the memory. In practice however its peanuts, and on Linux its pretty much just as good.

    anyways, using subprocesses for plugins makes complete sense. using them for tabs etc are just a way to work around the browser's instability. Rather have quick threads and non buggy code, than people just thinking a plugin went wrong while really, the browser is at fault. (Sure, you only lose the tab in that case, but still).

  14. Re:No restart on plugin installtion/update? by X0563511 · · Score: 3, Informative

    Plugins are not extensions.

    --
    For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  15. Will this completely prevent all crashes? Not now. by siglercm · · Score: 2, Informative

    Been running nightly 64-bit Firefox, automatically updated. I guess I got Lorentz a couple of nights ago, not sure when because I was traveling.

    Now no Flash instances run, they take 30 seconds or more to "initialize" before they crash, and the entire Lorentz-enabled Firefox browser crashed on me once. It just suddenly and unexpectedly disappeared. It's been a year or more since Firefox crashed on me.

    So at this point there are lots of bugs to shake out. Going back to vanilla 3.6.3 for the time being.

    --
    sigfault (core dumped)
  16. Re:Only as a side effect of being 32-bit by Anonymous Coward · · Score: 2, Informative

    Firefox plugins have been able to "voluntarily" use a subprocess for most activities for a long time - going back to netscape! They just need to, well, fork and exec a subprocess to do whatever they're doing. X11 even allows different processes to directly control subwindows as a design feature, though the subprocess could also talk back to the in-process segment of the plugin.

    However, initially for performance reasons and later when that became a realtive nonissue apparently just due to laziness (and probably partly due to highest-common-denominator effects - windows not having decent fork/exec and X11 not being its native gui layer...), flash and java in particular didn't. (Java relatively recently started doing so, though java was never the real problem in the first place - flash was).

    The difference here is that even if the plugin doesn't make its own subprocess, firefox lorentz is running the stuff in a separate process anyway. Which is a good thing given Adobe seems to be terminally incapable of writing a stable plugin for anything other than windows (and I have a notion that it only looks stable relative to windows stuff, linux and mac users have a much lower tolerance for random crashing).

  17. Re:Nice... but why by TheRaven64 · · Score: 2, Informative

    We've had it on FreeBSD for a while, and on x86-64 Linux too. It's been possible on most *NIX systems, but the motivation for doing it has been the lack of native plugins, not stability. Both FreeBSD and x86-64 Linux run 32-bit Linux plugins via nspluginwrapper, in a separate process. If you go to a site that crashes Flash, it just crashes another process. There's a little bit more overhead - an extra process instance, IPC between the plugin and browser instead of just function calls - so browsers on other platforms, with their focus on speed-at-all-costs have not bothered with it, until Google did and now everyone wants to.

    --
    I am TheRaven on Soylent News
  18. Re:How is this new? by hedwards · · Score: 2, Informative

    There already is, run FreeBSD. After all something can't crash that isn't available.