linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Luca Barbieri <luca.barbieri@gmail.com>
To: Eric Anholt <eric@anholt.net>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Jeff Garzik <jeff@garzik.org>,
	Matthew Garrett <mjg59@srcf.ucam.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Dave Airlie <airlied@linux.ie>,
	linux-kernel@vger.kernel.org, dri-devel@lists.sf.net
Subject: Re: [git pull] drm request 3
Date: Fri, 5 Mar 2010 21:39:01 +0100	[thread overview]
Message-ID: <ff13bc9a1003051239w6816e789m70bea7e34820d858@mail.gmail.com> (raw)
In-Reply-To: <877hpq36sj.fsf@pollan.anholt.net>

> So overall, I'd say that we spent about a month of developer time
> at least between jbarnes, ickle, and myself, on extending the execbuf
> interface to add a flag saying "dear kernel, please don't do this bit of
> work on this buffer, because I don't need it and it makes things slow."

Perhaps then, we should break ABI compatibility _more_ often to speed
up development, but also have awesome mechanisms to make it painless
for the user.

Such as:
1. Automatic side by side userspace installation, as Linus proposed
2. Kernel "make install" refusing to proceed if it finds that
userspace is not updated, and giving instructions on how to update
userspace
3. Distributions packaging the new ABI X/Mesa drivers and libdrm even
for stable distributions
4. Kernel "make install" offering to automatically install said
distribution packages if it detects a supported distribution
5. Ability to drop new versions of drivers/gpu/drm in an older kernel
tree and have it compile (within reasonable limits)

In particular, for people with (slightly) old kernels, it should be
much easier to make updated DRM trees still work with older kernels,
than attempting to make updated userspace work with older kernel
modules.
This also actually gives them the benefits of the new code.

And for people with really old kernels, it's not different from any
other hardware device, which requires a kernel upgrade to have better
support.

Then, for instance, Linus would just have seen the following upon
running make install:
This kernel requires the Nouveau userspace version 0.0.16, which you
don't have installed.
Fedora 12 has been detected.
Invoke yum to install the <rpmnames> RPMs required for it? [y/n]
_or_
Ubuntu 9.10 has been detected
Invoke apt-get to install the <debnames> packages required for it? [y/n]

If the user says no, or the distribution is unknown, instructions on
how to download and compile the source would be presented.

Once you setup this system, you can freely break the ABI with no
significant user discomfort by just raising the version number.
This also potentially applies to stuff other than DRM (e.g. perf, kvm,
iptables, udev, filesystem-specific tools/APIs, various device
configuration systems, and so on).

The really stable APIs/ABIs should not be the (undocumented) kernel
ones, but Xlib and OpenGL, which actually have formal specifications.
Perhaps eventually Gallium could join them as a stable API closer to
the hardware, but that's a long way off.

  reply	other threads:[~2010-03-05 20:39 UTC|newest]

Thread overview: 147+ 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                               ` Making Xorg easier to test (was Re: [git pull] drm request 3) Linus Torvalds
2010-03-05 16:11                                 ` 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 [this message]
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
  -- strict thread matches above, loose matches on Subject: below --
2010-03-05 22:18 Jonas Ritz

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=ff13bc9a1003051239w6816e789m70bea7e34820d858@mail.gmail.com \
    --to=luca.barbieri@gmail.com \
    --cc=airlied@linux.ie \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=dri-devel@lists.sf.net \
    --cc=eric@anholt.net \
    --cc=jeff@garzik.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mjg59@srcf.ucam.org \
    --cc=torvalds@linux-foundation.org \
    /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;
as well as URLs for NNTP newsgroup(s).