From: Linus Torvalds <torvalds@linux-foundation.org>
To: "Carlos R. Mafra" <crmafra2@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>,
Pekka Enberg <penberg@cs.helsinki.fi>,
Ben Skeggs <skeggsb@gmail.com>, Dave Airlie <airlied@gmail.com>,
Dave Airlie <airlied@linux.ie>,
linux-kernel@vger.kernel.org,
Jesse Barnes <jbarnes@virtuousgeek.org>,
dri-devel@lists.sf.net
Subject: Re: Making Xorg easier to test (was Re: [git pull] drm request 3)
Date: Fri, 5 Mar 2010 07:53:46 -0800 (PST) [thread overview]
Message-ID: <alpine.LFD.2.00.1003050726520.3788@localhost.localdomain> (raw)
In-Reply-To: <20100305100030.GA4970@Pilar.aei.mpg.de>
On Fri, 5 Mar 2010, Carlos R. Mafra wrote:
>
> Whereas everytime I wanted to do that with Xorg it was such a pain that
> I want to keep away from that mess.
Actually, take it from me: Xorg is _pleasant_ to test these days.
Ok, so that's partly compared to the mess it _used_ to be, but it's really
night and day. The whole build system was so incredibly baroque and heavy
that you really had to understand it deeply if you wanted to do anything
fancy.
And the non-fancy alternative was to just build the whole thing, which
took _hours_ even on fast machines because the build system overhead was
near-infinite (I dunno, maybe parallel builds could be made to work, but
it took more brain-power than I could ever put into it).
These days, there's a few dependencies you need to know about (I do agree
that from a user perspective the thing might have been made a bit _too_
modular) but they are generally fairly trivial, and there are scripts to
download all the drivers and misc utilities needed.
And the modularization often works: you can often (but by no means always;
it does require that the other parts are "close enough" and that there
haven't been any major changes) just have the source code to the one
driver you care about, and recompile and install just that _single_
driver.
I've done it. It's becautiful when it works. And it's a major pain when
you notice it didn't work, and you needed to get the whole server and
libdrm trees after all, and now you're not replacing single files any
more and have little idea what it will stomp on in your distro.
So it really is very convenient when it works. And X doesn't have
thousands of drivers like the kernel (maybe 10-15 that people care about
at all, and about three or four that actually really matter), and there
are seldom huge changes that affect them all, so the modularization
doesn't turn totally crazy.
So I can see where the Xorg people really like their new modular world. It
does work, it's _sooo_ much better than the mess it used to be, and the
problems are fairly manageable when they do happen.
The modular approach really works very well when there aren't lots of
interactions between the modules, and when the modules are few enough that
it isn't a total disaster (imagine doing a change that requires changes to
all drivers in Xorg, vs doing a change that requires changes to all
drivers in the kernel - the modular approach simply wouldn't work for the
latter case, because you'd spend all your time just chasing down external
users).
That said, the _one_ thing I really wish could be done would be to make it
easier to install things side-by-side - and with the modularization, you
really do want to do it module-by-module. One of the things that makes it
so easy to test the kernel is that when you install one kernel, that
doesn't affect the others, and you can go back-and-forth in testing.
That's really important, because it makes testing trivial and non-scary
even in the presense of issues that makes the new version unusable.
Linus
next prev parent reply other threads:[~2010-03-05 15:54 UTC|newest]
Thread overview: 146+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-02 23:56 [git pull] drm request 3 Dave Airlie
2010-03-04 18:18 ` Linus Torvalds
2010-03-04 18:27 ` Matt Turner
2010-03-04 18:36 ` Jesse Barnes
2010-03-04 18:39 ` Jesse Barnes
2010-03-04 18:51 ` Linus Torvalds
2010-03-04 18:56 ` Jesse Barnes
2010-03-04 19:08 ` Linus Torvalds
2010-03-04 19:25 ` Dave Airlie
2010-03-04 20:01 ` Linus Torvalds
2010-03-04 22:06 ` Dave Airlie
2010-03-05 0:08 ` Linus Torvalds
2010-03-05 0:28 ` Ben Skeggs
2010-03-05 0:41 ` Linus Torvalds
2010-03-05 0:56 ` Luc Verhaegen
2010-03-05 1:08 ` Linus Torvalds
2010-03-05 1:16 ` Luc Verhaegen
2010-03-05 1:22 ` Linus Torvalds
2010-03-05 1:20 ` Linus Torvalds
2010-03-05 1:28 ` Dave Airlie
2010-03-05 5:17 ` Linus Torvalds
2010-03-05 5:22 ` Dave Airlie
2010-03-05 5:30 ` Linus Torvalds
2010-03-05 5:42 ` Linus Torvalds
2010-03-05 1:19 ` Upstream first policy Kyle McMartin
2010-03-05 1:28 ` Linus Torvalds
2010-03-05 2:00 ` [git pull] drm request 3 Tony Luck
2010-03-05 20:34 ` Felipe Contreras
2010-03-05 6:49 ` Ingo Molnar
2010-03-05 7:06 ` Pekka Enberg
2010-03-05 7:17 ` "C. Bergström"
2010-03-05 7:53 ` Ingo Molnar
2010-03-05 15:18 ` Linus Torvalds
2010-03-05 7:44 ` Ingo Molnar
2010-03-05 7:58 ` Dave Airlie
2010-03-05 8:16 ` Stephane Marchesin
2010-03-05 10:00 ` Making Xorg easier to test (was Re: [git pull] drm request 3) Carlos R. Mafra
2010-03-05 12:54 ` Valdis.Kletnieks
2010-03-05 15:22 ` Matt Turner
2010-03-05 15:41 ` Daniel Stone
2010-03-05 15:49 ` Making Xorg easier to test David Miller
2010-03-05 16:03 ` Alan Cox
2010-03-05 16:06 ` Daniel Stone
2010-03-05 17:50 ` Xavier Bestel
2010-03-05 17:54 ` David Miller
2010-03-05 18:02 ` Jesse Barnes
2010-03-05 18:05 ` David Miller
2010-03-05 15:53 ` Linus Torvalds [this message]
2010-03-05 16:11 ` Making Xorg easier to test (was Re: [git pull] drm request 3) Daniel Stone
2010-03-05 16:30 ` Linus Torvalds
2010-03-08 8:57 ` Daniel Stone
2010-03-05 16:26 ` Jesse Barnes
2010-03-05 13:55 ` [git pull] drm request 3 Luc Verhaegen
2010-03-05 16:21 ` Jesse Barnes
2010-03-05 12:38 ` Alan Cox
2010-03-05 14:37 ` David Miller
2010-03-05 14:46 ` Mike Galbraith
2010-03-05 18:05 ` Ingo Molnar
2010-03-05 15:09 ` Alan Cox
2010-03-05 15:11 ` David Miller
2010-03-05 15:17 ` Daniel Stone
2010-03-05 15:26 ` David Miller
2010-03-05 15:40 ` Daniel Stone
2010-03-05 15:48 ` David Miller
2010-03-05 16:02 ` Alan Cox
2010-03-05 16:05 ` David Miller
2010-03-05 17:58 ` Younes Manton
2010-03-05 16:13 ` Linus Torvalds
2010-03-05 16:23 ` Alan Cox
2010-03-05 16:44 ` Linus Torvalds
2010-03-05 17:04 ` Alan Cox
2010-03-05 17:19 ` tytso
2010-03-05 16:04 ` Daniel Stone
2010-03-05 16:06 ` David Miller
2010-03-05 16:31 ` Alan Cox
2010-03-05 17:36 ` Jerome Glisse
2010-03-05 16:46 ` tytso
2010-03-05 19:38 ` Corbin Simpson
2010-03-05 21:01 ` Corbin Simpson
2010-03-05 21:51 ` tytso
2010-03-05 23:50 ` Tilman Schmidt
2010-03-05 17:23 ` Linus Torvalds
[not found] ` <hmra63$898$1@xyzzy.farnsworth.org>
2010-03-06 6:17 ` Dale Farnsworth
2010-03-06 17:21 ` Valdis.Kletnieks
2010-03-05 15:56 ` Luca Barbieri
2010-03-05 16:13 ` Alan Cox
2010-03-05 16:19 ` Linus Torvalds
2010-03-05 16:38 ` Alan Cox
2010-03-05 20:59 ` Felipe Contreras
2010-03-05 16:25 ` Luca Barbieri
2010-03-05 15:42 ` Alan Cox
2010-03-05 16:07 ` Linus Torvalds
2010-03-05 17:42 ` Jeff Garzik
2010-03-05 19:11 ` Justin P. mattock
2010-03-04 19:33 ` Jesse Barnes
2010-03-04 19:12 ` Matthew Garrett
2010-03-04 18:45 ` Linus Torvalds
2010-03-04 18:43 ` Linus Torvalds
2010-03-04 18:50 ` Matthew Garrett
2010-03-04 18:55 ` Linus Torvalds
2010-03-04 19:01 ` Linus Torvalds
2010-03-04 19:04 ` Matthew Garrett
2010-03-04 19:14 ` Linus Torvalds
2010-03-04 19:25 ` Matthew Garrett
2010-03-04 19:41 ` Linus Torvalds
2010-03-04 19:53 ` Matthew Garrett
2010-03-04 20:07 ` Linus Torvalds
2010-03-04 20:46 ` Matthew Garrett
2010-03-04 20:57 ` Stephane Marchesin
2010-03-04 22:54 ` Linus Torvalds
2010-03-04 23:03 ` Dave Airlie
2010-03-04 23:19 ` Linus Torvalds
2010-03-04 23:27 ` Michel Dänzer
2010-03-04 23:28 ` Linus Torvalds
2010-03-04 23:35 ` Dave Airlie
2010-03-04 23:53 ` Linus Torvalds
2010-03-05 0:24 ` Ed Tomlinson
2010-03-05 0:24 ` Kyle McMartin
2010-03-04 23:28 ` Dave Airlie
2010-03-04 23:05 ` Jesse Barnes
2010-03-05 12:26 ` Alan Cox
2010-03-04 22:28 ` Adam Jackson
2010-03-04 23:03 ` Linus Torvalds
2010-03-04 23:14 ` Stephane Marchesin
2010-03-05 12:29 ` Alan Cox
2010-03-05 16:18 ` Adam Jackson
2010-03-04 19:32 ` Jeff Garzik
2010-03-04 22:18 ` Adam Jackson
2010-03-04 22:21 ` Jeff Garzik
2010-03-04 22:59 ` Adam Jackson
2010-03-05 11:24 ` Jeff Garzik
2010-03-05 15:46 ` Adam Jackson
2010-03-05 1:47 ` Robert Hancock
2010-03-05 12:21 ` Alan Cox
2010-03-05 19:30 ` Eric Anholt
2010-03-05 20:39 ` Luca Barbieri
2010-03-06 15:23 ` Sergio Monteiro Basto
2010-03-06 17:40 ` Linus Torvalds
2010-03-06 19:06 ` Sergio Monteiro Basto
2010-03-06 19:28 ` Linus Torvalds
2010-03-06 20:49 ` tytso
2010-03-06 20:52 ` Alan Cox
2010-03-06 22:38 ` tytso
2010-03-04 21:21 ` Maarten Maathuis
2010-03-04 21:22 ` Maarten Maathuis
2010-03-04 21:27 ` Maarten Maathuis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.LFD.2.00.1003050726520.3788@localhost.localdomain \
--to=torvalds@linux-foundation.org \
--cc=airlied@gmail.com \
--cc=airlied@linux.ie \
--cc=crmafra2@gmail.com \
--cc=dri-devel@lists.sf.net \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=penberg@cs.helsinki.fi \
--cc=skeggsb@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox