Among the Firefox Wayland bugs, one of the top crash bugs is over a lost connection to a Wayland compositor. For dealing with it is to have a proxy between Firefox and the Wayland compositor to cache messages and prevent compositor message queue overflows.

  • @drwankingstein@lemmy.dbzer0.com
    link
    fedilink
    English
    22
    edit-2
    6 months ago

    this is a wayland issue. Due to how wayland works, it cannot drop messages, this means if the messages stop being accepted (IE. the program becomes very slow and not very responsive) the application will wind up dying. EEVDF helped resolve a lot of these issues. but they arent gone yet.

    a fairly easy replication cause is to start a large rust project compile since cargo will thread to oblivion if it gets the chance, then use the PC on wayland. Applications can frequently die, Firefox, MPV, Kate, gnome web, chromium, games, etc. it also doesn’t matter what compositor you use right now as gnome, kde sway all share the issue

    EEVDF really does help stop a lot of these crashing though

    • @woelkchen@lemmy.world
      link
      fedilink
      96 months ago

      the program becomes very slow and not very responsive

      BeOS solved the issue of unresponsive GUIs in the 1990s. The GUI just must never run in the same thread as the logic.

      • @drwankingstein@lemmy.dbzer0.com
        link
        fedilink
        English
        56 months ago

        while this is good on theory, when your CPU is being absolutely hammered, you need to re-adjust priorities to make a system responsive again, it’s actually not a simple thing to do without a context aware scheduler. Even though EEVDF is pretty good, it still struggles some times

        • @woelkchen@lemmy.world
          link
          fedilink
          06 months ago

          My PC with a 133MHz Pentium 1 processor was pretty responsive all the time back in the day. It’s definitely a solved problem.

      • @FuckBigTech347@lemmygrad.ml
        link
        fedilink
        36 months ago

        I agree. The proxy solution they’re proposing seems like a band-aid on a fundamental design issue to me. It’s easier to just tack yet another library onto a big project than to refactor large amounts of code. This is exactly why a lot of software is getting more and more shit.

        • lemmyvore
          link
          fedilink
          English
          06 months ago

          Also this is the kind of issues Wayland will be facing now that it’s starting to see widespread adoption, issues that arise from more and more complex situations created by interconnecting more apps with it in more ways.

          How the devs handle this will be crucial and imo it can make or break the project in the long run. It’s one thing to successfully run a hobby project at a small scale, it’s another to shoulder the entire Linux desktop for the foreseeable future. That’s the bar that X had to meet; if Wayland intends to be the Linux desktop it has to step up. “Not our problem, deal with it outside Wayland” will not do.

    • aardA
      link
      6
      edit-2
      6 months ago

      You’re describing Wayland running into issues due to overall high system load, and not been given enough scheduler time to accept messages?

      edit: This issue? https://gitlab.freedesktop.org/wayland/wayland/-/issues/159 - didn’t find anything else matching the description, and personally have never seen that, both on my low specs notebook or my workstation, which probably counts as higher spec.

      • @drwankingstein@lemmy.dbzer0.com
        link
        fedilink
        English
        46 months ago

        correct, this is the same issue, this generally really only happens with a sustained all core workload that will consistently leave you cpu at 100%, since if it’s not sustained, the kernel will allot some time to the programs, and the crash wont happen

        • aardA
          link
          46 months ago

          I guess that explains why I’m not seeing it - my workstation has 64 threads and more than enough memory, and on my notebook I’m scheduling load intensive stuff to not interfere with interactive device usage.