mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Dave Airlie" <airlied@gmail.com>
To: "Jon Smirl" <jonsmirl@gmail.com>
Cc: "Jesse Barnes" <jbarnes@virtuousgeek.org>,
	"Jeff Garzik" <jeff@garzik.org>,
	"Jesse Barnes" <jesse.barnes@intel.com>,
	linux-kernel@vger.kernel.org,
	"Antonino A. Daplas" <adaplas@gmail.com>
Subject: Re: [RFC] enhancing the kernel's graphics subsystem
Date: Tue, 22 May 2007 18:25:05 +0100	[thread overview]
Message-ID: <21d7e9970705221025r2f798dc5x310947db040c6521@mail.gmail.com> (raw)
In-Reply-To: <9e4733910705220813i479a68faxf365697962317c60@mail.gmail.com>

> These are not isolated problems. Linux needs a properly designed
> graphics subsystem. One way to achieve that is to design it all on
> paper first so that we can try and locate the interactions between
> modules. For example the current mode setting design is definitely
> broken for multi-seat support, that's because you didn't take that
> feature into account when writing the code.

No it isn't the code Jesse posted can handle multi-seat fine in the
areas that it makes sense as we've pointed out to you you cannot just
divide a GPU up into two head and not have the users interfere with
each other, reprogramming modes on multiple crtcs/outputs and setting
up memory bandwidth calculations requires the driver to do things that
will potentially disrupt the other user, in most cases setting a mode
on a head requires turning off all devices on the card first and
switching them back on in a certain order, this is usually due to
clocking interactions,

We can provide two fb interfaces for users wanting to do what you
want, we then need to fix the VT subsystem on top of that, however for
most of our users (like 95% at least) we want to support X as best we
can, and that is where the energy will be placed initially, reducing
the number of mode changes on startup along with suspend/resume for
users is a major goal of this work.

> Putting a small module into the kernel first with a random API, then
> try and build the next module is not a good development path. It is
> better to design all of the modules on paper and then work backwards
> to the API the first module needs.  Even better would be to get the
> whole subsystem working before including it in the kernel. Once these
> exposed APIs go it, it is impossible to get them out. We need to try
> and make sure that they are correct to begin with.

Fine, but nobody has succeded at this, because the effort of doing it
this way is not incrementally developed, we are not designing DX10, we
are improving Linux graphics one step at a time.

>
> You need to take into account that you are proposing the replacement
> of an existing subsystem, not the initial inclusion of a virgin
> system. Putting your code in as is does make the X server happy, but
> it is not solving all of the known problems with the existing graphics
> subsystem. If you just want to make to X server happy it would be
> better to extend the existing fbdev API and not try and replace the
> subsystem.

The thing is we need integration with memory management, the memory
management is in the drm as it is complicated and the work is done, I
know you aren't even reading this sentence at this point.

Dave.

  reply	other threads:[~2007-05-22 17:25 UTC|newest]

Thread overview: 100+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-17 21:23 Jesse Barnes
2007-05-17 22:32 ` [PATCH 1/3] allow console unregistration Jesse Barnes
2007-05-17 22:47   ` Jesse Barnes
2007-05-17 23:23   ` Antonino A. Daplas
2007-05-18  0:56     ` Jesse Barnes
2007-05-22 21:43     ` [PATCH 1/2] " Jesse Barnes
2007-05-23  0:49       ` Antonino A. Daplas
2007-05-22 21:44     ` [PATCH 2/2] make fbcon unregister when unloaded Jesse Barnes
2007-05-22 22:05       ` Randy Dunlap
2007-05-22 22:14         ` Jesse Barnes
2007-05-23  0:47           ` Antonino A. Daplas
2007-05-30  0:00   ` [PATCH 1/3] allow console unregistration Antonino A. Daplas
2007-05-30  6:26     ` Geert Uytterhoeven
2007-05-17 22:37 ` [PATCH 2/3] drm modesetting core Jesse Barnes
2007-05-17 22:48   ` Jesse Barnes
2007-05-17 23:41   ` Luca Tettamanti
2007-05-18  1:04     ` Jesse Barnes
2007-05-18 19:33       ` Luca Tettamanti
2007-05-18 21:06         ` Jesse Barnes
2007-05-17 22:40 ` [PATCH 3/3] Intel support for DRM modesetting Jesse Barnes
2007-05-17 22:48   ` Jesse Barnes
2007-05-20 17:42 ` [RFC] enhancing the kernel's graphics subsystem Jon Smirl
2007-05-20 23:10   ` Jesse Barnes
2007-05-21  0:47     ` Jon Smirl
2007-05-21  1:29       ` Jeff Garzik
2007-05-21 15:34         ` Jon Smirl
2007-05-21 16:15           ` Arjan van de Ven
2007-05-21 15:09       ` Jesse Barnes
2007-05-21 16:01         ` Jon Smirl
2007-05-21 16:14           ` Jesse Barnes
2007-05-21 16:34             ` Jesse Barnes
2007-05-21 17:05               ` Jon Smirl
2007-05-21 17:14                 ` Dave Airlie
2007-05-21 17:29                   ` Jon Smirl
2007-05-21 17:42                   ` Jon Smirl
2007-05-21 17:47                     ` Dave Airlie
2007-05-21 18:04                       ` Jon Smirl
2007-05-21 18:44                         ` Dave Airlie
2007-05-21 19:10                           ` Jon Smirl
2007-05-21 19:20                             ` Dave Airlie
2007-05-21 23:24                             ` Jeff Garzik
2007-05-22  0:08                               ` Jon Smirl
2007-05-22  0:20                     ` Benjamin Herrenschmidt
2007-05-21 23:21                   ` Jeff Garzik
2007-05-22  0:35                     ` Alan Cox
2007-05-22  0:33                       ` Jeff Garzik
2007-05-22  0:45                       ` Jon Smirl
2007-05-22  0:56                         ` Jon Smirl
2007-05-22  8:21                           ` Dave Airlie
2007-05-22  8:07                     ` Dave Airlie
2007-05-22  8:16                       ` Jeff Garzik
2007-05-22  8:27                         ` Dave Airlie
2007-05-22 16:06                         ` Jon Smirl
2007-05-22 16:19                           ` Alan Cox
2007-05-22 16:34                           ` Jeff Garzik
2007-05-22  0:15                   ` Benjamin Herrenschmidt
2007-05-21 17:32                 ` Jesse Barnes
2007-05-21 23:18                 ` Jeff Garzik
2007-05-22  0:26                   ` Jon Smirl
2007-05-22  1:56                     ` Jesse Barnes
2007-05-22 14:27                       ` Jon Smirl
2007-05-22 14:35                         ` Dave Airlie
2007-05-22 15:13                           ` Jon Smirl
2007-05-22 17:25                             ` Dave Airlie [this message]
2007-05-22 19:58                               ` Jon Smirl
2007-05-28 20:12                                 ` Pavel Machek
2007-05-28 20:57                                   ` Jon Smirl
2007-05-29 14:26                                     ` Pavel Machek
2007-05-29 16:51                                       ` Jon Smirl
2007-05-22 14:54                         ` Alan Cox
2007-05-22 15:16                           ` Jon Smirl
2007-05-22 15:46                             ` Jesse Barnes
2007-05-22 16:02                               ` Jon Smirl
2007-05-22 16:14                                 ` Alan Cox
2007-05-22 16:15                                 ` Jesse Barnes
2007-05-22 16:32                                   ` Jon Smirl
2007-05-22 16:35                                     ` Jeff Garzik
2007-05-22 16:51                                     ` Jesse Barnes
2007-05-22 15:59                             ` Matthew Garrett
2007-05-21 16:16           ` Dave Airlie
2007-05-21  8:27   ` Dave Airlie
2007-05-21  9:09     ` Helge Hafting
2007-05-21  9:27       ` Dave Airlie
2007-05-21  9:44         ` Helge Hafting
2007-05-21 15:57           ` Jesse Barnes
2007-05-21 16:07             ` Jon Smirl
2007-05-21 16:27               ` Dave Airlie
2007-05-21 16:50                 ` Xavier Bestel
2007-05-22  0:09 ` Benjamin Herrenschmidt
2007-05-22  0:51   ` Keith Packard
2007-05-22  2:48     ` Benjamin Herrenschmidt
2007-05-22 15:39   ` Jesse Barnes
2007-05-22 23:26     ` Benjamin Herrenschmidt
2007-05-22 23:36       ` Jesse Barnes
2007-05-23  0:40         ` Antonino A. Daplas
2007-05-23 12:19       ` Helge Hafting
2007-05-22 16:29   ` Philipp Klaus Krause
2007-05-22 16:57     ` Jesse Barnes
2007-05-22 18:18     ` Dave Airlie
2007-05-22  2:56 ` l l

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=21d7e9970705221025r2f798dc5x310947db040c6521@mail.gmail.com \
    --to=airlied@gmail.com \
    --cc=adaplas@gmail.com \
    --cc=jbarnes@virtuousgeek.org \
    --cc=jeff@garzik.org \
    --cc=jesse.barnes@intel.com \
    --cc=jonsmirl@gmail.com \
    --cc=linux-kernel@vger.kernel.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

all inboxes | Powered by JetHome®