Linked by Thom Holwerda on Sat 15th Aug 2009 17:55 UTC
X11, Window Managers Over the past couple of months, and especially over the past couple of weeks, I've been working very hard to write and complete my thesis. I performed all the work on Windows 7, but now that the thesis is finally done, submitted, and accepted, I installed Ubuntu - and immediately I was reminded of why I do not do any serious work on Linux: the train wreck that is X.org.
Thread beginning with comment 378918
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: The Weather in Darjeeling
by Thom_Holwerda on Sun 16th Aug 2009 23:07 UTC in reply to "The Weather in Darjeeling"
Thom_Holwerda
Member since:
2005-06-29

Wow. This is the 242nd post under this "story". After sleeping on it... and speaking as an admin who depends upon X working well and reliably every working day


Either you're intentionally twisting the entire article, or you did not read it.

I did not claim, in any way, that X is unstable. I said something completely else, and you're choosing to just ignore it. My point is simple: resizing a window should not cause the entire graphical stack to cock up, killing all applications and loosing data. Or are you denying the fact that when X goes down - everything goes down?

It doesn't mater how stable X is - bugs will ALWAYS occur, and because of that inescapable fact, software needs to be written with isolation in mind, as to prevent simple crashes getting way out of control.

The simple FACT of the matter is that Windows Vista and Windows 7 are FAR better at mitigating possible issue sin the graphics stack than X is. That's all my rant brought forward, and I have yet to see anyone provide proper argumentation refuting that fact.

I think the main problem here is that I dared to point out that *shock gasp horror* Windows is better at something than Linux/X. That's the real sore spot here.

Edited 2009-08-16 23:11 UTC

Reply Parent Score: 1

RE[2]: The Weather in Darjeeling
by rajj on Sun 16th Aug 2009 23:33 in reply to "RE: The Weather in Darjeeling"
rajj Member since:
2005-07-06

You keep mindlessly repeating the isolation mantra as if it will magically solve the problem you experienced. It won't. X11 fundamentally has a lot of isolation seeing as each of the parts communicates over network sockets. Of course, I'm pretty sure you've ranted before about how that also makes X suck.

The real problem is that X clients can't survive the server going away. There are a number of good reasons why this is the case. The most important being that --for performance reasons-- the server maintains data structures on behalf of the clients (such as pixmaps). There a number of ways this could be rectified, but it would undoubtedly cause API semantics to change in non-trivial ways.

Reply Parent Score: 5

sbergman27 Member since:
2005-07-24

Rajj is right, Holwerda. You are mindlessly repeating your isolation mantra.

What I'm saying is that based upon my *much* more extensive professional experience using X in real business with real users on a *wide* variety of hardware, the point which you keep insisting (over and over) that everyone is missing, has just not proven to be significant. With *one* exception. (See below.)

Certainly, Thom, I understand the claim that you are making. And it just does not matter that much. That said... I would not be averse to X clients being able to reconnect to a display, as long as the costs in other areas did not outweigh what advantage there is. As an admin, I certainly prize refinements to robustness. (And this would be a good time to say that my very practical responsibilities and requirements as an admin don't leave me a whole lot of room for having emotional reactions to the idea of Windows doing something "better" than Linux. So although I am certainly pleased when Linux is clearly doing something better than Windows, your assertion that this is "all about" that is just plain wrong.)

As mentioned above, there is an exception, where a persistent session is of practical, tangible benefit, which I and likely others encounter in the real world. And that is with the sessions running over the WAN connections, as we do for our workgroups in remote cities. This is not because X is unstable, but because WAN's entail a certain (though not large) degree of unreliability. However, for those I use NX for performance reasons. And one benefit afforded by NX is... persistent sessions. You can kill the remote X server (or even pull the power plug and reboot), log back in, and voilá! Your session is still there exactly as you left it. This is, indeed, a useful, though not essential feature when running over a WAN. And I would venture to say that if it starts seeming too important, it's probably time to look for a new ISP.

So, Thom, you might want to stop chanting, with your fingers in your ears, about how no one understands your point, and actually start *listening* to what other people are saying about the actual, real world *value* of your currently well understood point.

And I really shouldn't be wasting so many words on this bizarre and largely meaningless thread.

Edited 2009-08-17 00:25 UTC

Reply Parent Score: 4

RE[2]: The Weather in Darjeeling
by adamk on Mon 17th Aug 2009 00:15 in reply to "RE: The Weather in Darjeeling"
adamk Member since:
2005-07-08


The simple FACT of the matter is that Windows Vista and Windows 7 are FAR better at mitigating possible issue sin the graphics stack than X is. That's all my rant brought forward, and I have yet to see anyone provide proper argumentation refuting that fact.


Except you didn't state a fact, at least not one that everyone agrees on. You stated a personal experience you had. Other people, such as myself, have had different personal experiences, where graphics stack crashes in Vista brought down the entire OS and caused actual data loss on the filesystem. At least when X crashes on linux/FreeBSD, I can restart X. When the graphics system on Vista crashes, I end up with about 2 megs of data in Found.000. Now why can't Vista learn from Linux/Xorg?

Adam

Edited 2009-08-17 00:17 UTC

Reply Parent Score: 3

Mark Williamson Member since:
2005-07-06

Either you're intentionally twisting the entire article, or you did not read it.


Sorry, Thom, I don't think the point behind your article came across at all well in the way you presented it.


I did not claim, in any way, that X is unstable. I said something completely else, and you're choosing to just ignore it. My point is simple: resizing a window should not cause the entire graphical stack to cock up, killing all applications and loosing data. Or are you denying the fact that when X goes down - everything goes down?


The way you phrased it made it sound like you were saying "X is so unstable it can even be crashed by a simple window resize". What I believe you intended to convey was that, whilst crashing due to a simple window resize is very unusual, a) X should be tolerant of driver bugs and that b) if X does have to go down it shouldn't cause the apps to go down too. But that's not how your article came across to most people.

It's very understandable that it was frustrating to lose your apps, I hope that you didn't lose any important data. But your anger and frustration came across far more strongly than the rather technical point you were trying to make.


It doesn't mater how stable X is - bugs will ALWAYS occur, and because of that inescapable fact, software needs to be written with isolation in mind, as to prevent simple crashes getting way out of control.


Yes! That is a good point to be making.


The simple FACT of the matter is that Windows Vista and Windows 7 are FAR better at mitigating possible issue sin the graphics stack than X is. That's all my rant brought forward, and I have yet to see anyone provide proper argumentation refuting that fact.

I think the main problem here is that I dared to point out that *shock gasp horror* Windows is better at something than Linux/X. That's the real sore spot here.


No, I don't think that is the source of the sore spot. Don't get me wrong, there would have been trolls, aggressive Linux supporters, misguided individuals however you phrased your article. However, many people have been complaining about the content and delivery of the editorial as well as stating their agreement / disagreement with your underlying point.

It's not that you don't write well, your stuff is generally very readable. But in this case what came across was a lot of emotion and very little technical content, inspiring a discussion generating more heat than light, as they say. I think perhaps your article reads differently to you than to somebody who doesn't know in advance what the "take home" point is supposed to be.

It's a shame because there are a lot of useful / interesting things we could talk about here, some of which posters have already touched on. Such as:

* How is the Windows driver isolation architected? How good is the fault isolation, some people here seem to think it's more a voluntary restart facility than complete isolation. This is important as full isolation is going to be a harder problem.
* How can X users mitigate this now? (e.g. run apps under Xpra or VNC to isolate them from driver bugs in the real X Server? Use an xmove proxy? Are there any X extensions that can deal with this?)
* How should this be solved? Could X implement an architecture similar to Windows? Is there a better way to do it - just make something like xmove but better, then restart the entire X server if stuff breaks? Or maybe just isolating drivers in some way would be better - but how to do that? Can the toolkits handle it in principle, should they?
* Could any of the fault isolation / tolerance solutions from other areas of OS design be leveraged? (Run certain X code in a separate process / careful setting of memory permissions / proxy server / use a safe bytecode for actual driver code)
* There are obvious links between migratable applications and restartable X servers, since a new connection is being made anyhow. Are there app migration systems that are relevant? Does anyone do this already? Keith Packard has talked about app migration in the past, maybe he has expanded on this further somewhere.
* What if we were using Wayland instead of X? Would handling it there be easier? Have they thought about this?

Isolating bugs in drivers is Hard, that's why all mainstream OS kernels are still effectively monolithic with your "USB feather duster" driver being able to bring down the entire system. It's good if Windows has attempted to tackle this in the graphics driver case - but now I (we?) am hungry for technical details, a comparison of techniques, debate over the appropriate course of action.

I come to OSNews looking for this sort of stuff and I would love to see an in-depth discussion here about the technical aspects of this. Maybe it would be a good candidate for an original article submission by someone, or for an interview with some relevant developers.

Reply Parent Score: 4

lemur2 Member since:
2007-02-17

Isolating bugs in drivers is Hard,


It is impossible if one doesn't have the source code ...

that's why all mainstream OS kernels are still effectively monolithic with your "USB feather duster" driver being able to bring down the entire system. It's good if Windows has attempted to tackle this in the graphics driver case - but now I (we?) am hungry for technical details, a comparison of techniques, debate over the appropriate course of action.


I don't believe that the NT kernel actually is monolithic. I thought it was a microkernel architecture?

If one wants a similar approach in FOSS, I know of only one candidate ... which is the GNU Hurd kernel.

http://en.wikipedia.org/wiki/GNU_Hurd

It would seem that there is not much hope to be placed in this however, compared with the effort expended on the Linux kernel.

Reply Parent Score: 2

richardstevenhack Member since:
2006-12-30

No, it is NOT all your rant brought forward.

You went out of your way to cuss out one of the mainstays of the Linux OS. You went out of your way to brag about Windows Vista and Windows 7 over the X system, when the two are apples and oranges.

You got pissed because you lost your work and now you're backing off from what you said because you realize it sounds bad, like a lame luser.

You could have simply said it would be nice if X isolated the effects of driver and other bugs, and allowed easy session reconnects. Period. End of story.

And guess what? I'm quite sure the people who maintain X would agree with that and may well be working on it in the roadmap. Did you bother to ask them?

No, you went off the deep end.

Nobody is impressed.

Reply Parent Score: 3

RE[2]: The Weather in Darjeeling
by kaiwai on Mon 17th Aug 2009 10:50 in reply to "RE: The Weather in Darjeeling"
kaiwai Member since:
2005-07-06

Either you're intentionally twisting the entire article, or you did not read it.

I did not claim, in any way, that X is unstable. I said something completely else, and you're choosing to just ignore it. My point is simple: resizing a window should not cause the entire graphical stack to cock up, killing all applications and loosing data. Or are you denying the fact that when X goes down - everything goes down?

It doesn't mater how stable X is - bugs will ALWAYS occur, and because of that inescapable fact, software needs to be written with isolation in mind, as to prevent simple crashes getting way out of control.

The simple FACT of the matter is that Windows Vista and Windows 7 are FAR better at mitigating possible issue sin the graphics stack than X is. That's all my rant brought forward, and I have yet to see anyone provide proper argumentation refuting that fact.

I think the main problem here is that I dared to point out that *shock gasp horror* Windows is better at something than Linux/X. That's the real sore spot here.


You've hit on something the X11/Linux community has been attempting to resolve for almost a decade - to create an operating system where problems are handled in a graceful manner. When the wrong settings are put in - the GUI can still recover. When the driver fails to install properly, the GUI can recover to a workable state and allow the end user to uninstall the defective driver.

The problem is that there is still far too many who suffer from the disease of hating Microsoft - the failure on their part to move forward realising when there is a good idea and then adopting it, then building upon it. Part of recognising a great idea is also recognising when something you have sucks - like the kid who can't sing but turns up on American idol, its sometimes necessary to be honest and say, "what we have sucks" and then do something about it. Admitting something sucks is the first step to addressing the problem - if you don't address the suckage factor and asking why it sucked in the first place, you're simply going to re-create a piece of software and replicate the same design flaws.

Edited 2009-08-17 10:56 UTC

Reply Parent Score: 6