Announcement

Collapse
No announcement yet.

X.Org Security Advisory For X11 Going Back To 1993

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Originally posted by uid313 View Post
    Yeah, someone need to run AdressSanitizer, Valgrind or some static code analysis tool over the code base.
    We have - Valgrind, Coverity, Parfait, clang, and others - and have fixed bugs they've found. No static analyzer finds all possible bugs, and all produce false positives to weed out, but we keep on trying. Sometimes, a fresh set of eyeballs, like this case and the advisory a few months ago, is the best hope for finding bugs that all the other tools have missed.

    Comment


    • #17
      This is way we have Wayland....

      Comment


      • #18
        Originally posted by schmidtbag View Post
        That is true - on the user end, I'm sure there's very little to be affected by. I'm sure if ALL "legacy cruft" were removed then xorg might have a performance improvement in some way (even if just loading speeds), but I wouldn't find that significant enough. But the way legacy backward compatibility affects users is when certain technologies can't be used because it would break the legacy support, or, when workarounds must be made, which in turn negatively affects performance. So at a glance, support for 15+ year old extensions or libraries might not have any effect, but preserving their existence is a problem.
        On this video: http://mirror.linux.org.au/linux.con...land_and_X.ogv
        The guy mentions that opening Gedit, a tiny program, spends over 500ms just waiting on the X.org server because it's Core functions/old extensions are trying to do things that the window manager will end up doing anyway...
        There were some tests where the X server caused over 1.2 seconds of blocking...

        Bring in Wayland/Mir/etc, that number gets cut down to 0ms and Gedit loads an entire half a second faster on average, which is awesome. X11 is making Linux seem slower than it really is, and that's always a bad thing...

        Not to mention that 500ms of round trips to X.Org server to open a single Gedit window, let alone all the other applications a normal user runs, is probably not doing a lot of good for battery life

        Comment


        • #19
          Originally posted by uid313 View Post
          But X12 would mean a whole new protocol written from the bottom up. It would be a huge undertaking.
          I think we should just throw out all old stuff, and be like "Ok, this is not X11" and make it a reduced subset of X11 and call it X11-Lite or something.
          Says who? The whole point of incrementing the version number is to point out that backwards compatibility no longer applies. Throwing out the old parts of X11 (and presumably standardizing some of the current extensions) is exactly what would cause them to issue a new X12. I'm not sure why you'd want to call it anything else, but even if you did that's just marketing fluff. Whatever you call it, what it is would be X12.

          The reason no one is interested in that is because it would be a huge undertaking to get everyone using X11 together and agree on exactly what should be thrown out versus what should remain. And no one cares enough about the modern parts of X to do that - the only real point to keeping X around is the backwards compatibility it provides to everyone.
          Last edited by smitty3268; 10-12-2013, 02:56 AM.

          Comment


          • #20
            Originally posted by Daktyl198 View Post
            Not to mention that 500ms of round trips to X.Org server to open a single Gedit window, let alone all the other applications a normal user runs, is probably not doing a lot of good for battery life
            WTF is gedit doing? None of the apps I use take that long to launch _total_, not just X server portions.

            Comment


            • #21
              Originally posted by curaga View Post
              WTF is gedit doing? None of the apps I use take that long to launch _total_, not just X server portions.
              Well, you probably have a much faster computer than what the guy was using :P

              It was just an example of how X11 does affect performance of everything, especially on computers older than 3 or 4 years. On my computer, Gedit takes ~1.5 seconds to open after a cold boot. That's presumably because my computer is 6 years old and was "meh" when I got it but I can probably assume that it would open faster on Wayland/Mir/whatever

              Comment


              • #22
                Originally posted by curaga View Post
                WTF is gedit doing? None of the apps I use take that long to launch _total_, not just X server portions.
                That's mainly a problem with informing times without informing hardware.

                Comment


                • #23
                  No, the computer's beefiness shouldn't have anything to do with app startup times, as they are all IO, not computation. I have very fast startup times on old hw too (well I do run in RAM just for that purpose).

                  The point of my post was that gedit, or its toolkit, are doing something wrong.

                  Comment


                  • #24
                    Originally posted by Daktyl198 View Post
                    Well, you probably have a much faster computer than what the guy was using :P
                    This was on a specced-out 2011 (Sandy Bridge) MacBook Air. So, not only is it quite a fast machine to begin with, but I/O is barely a thing as it's got an SSD. Intel graphics also provides the best case for GPU blocking, since when you bounce between CPU and GPU rendering, you don't have to transfer the buffer back and forth over PCIE! If I was on a system with a discrete GPU, those numbers would've been worse ...

                    Exactly what was happening, I'm not sure. But what I did was to stick profiling in libX11 at the point where it waits - blocks - for a reply from the X server. This reply had a simple gettimeofday() counter, and I added up the cumulative time when I started gedit from a terminal. I ran this about 10-15 times and picked the highest number. That's all.

                    Comment


                    • #25
                      Originally posted by curaga View Post
                      WTF is gedit doing? None of the apps I use take that long to launch _total_, not just X server portions.
                      Guess you aren't using Evolution then. Or you have fewer tabs than I do in Chrome. (And I've since upgraded to the Ivy Bridge model.)

                      Anyway, GEdit doesn't take 1.5 seconds to launch on my machine every time. Usually it's blindingly fast. Sometimes it's a tad sluggish. And occasionally (not all the time, but enough to show up as one in less-than-fifteen in my measurements), it takes a pathologically long amount of time to launch. Why? Because the X server's taking staggering amounts of time to reply.

                      Comment


                      • #26
                        Originally posted by Daktyl198 View Post
                        It was just an example of how X11 does affect performance of everything, especially on computers older than 3 or 4 years. On my computer, Gedit takes ~1.5 seconds to open after a cold boot. That's presumably because my computer is 6 years old and was "meh" when I got it but I can probably assume that it would open faster on Wayland/Mir/whatever
                        On my PC simple applications start immediately, big applications like Libre Office in 1 second when their files are cached in memory. First start is slower because of slow hard drive.

                        Comment


                        • #27
                          Originally posted by daniels View Post
                          I ran this about 10-15 times and picked the highest number. That's all.
                          What was the median?

                          Comment


                          • #28
                            Originally posted by daniels View Post
                            Anyway, GEdit doesn't take 1.5 seconds to launch on my machine every time. Usually it's blindingly fast. Sometimes it's a tad sluggish. And occasionally (not all the time, but enough to show up as one in less-than-fifteen in my measurements), it takes a pathologically long amount of time to launch. Why? Because the X server's taking staggering amounts of time to reply.
                            I think you're hitting the same bug I hit ~2 years ago: https://bugs.freedesktop.org/show_bug.cgi?id=46578 or google for "slow xquerypointer". Ajax promised fixes to 1.12 or 1.13 at latest, nothing has been done to this day AFAIK.

                            The symptoms sound very much alike, the server occasionally ignores you in favor of some other client, causing latency.

                            Comment

                            Working...
                            X