All of lore.kernel.org
 help / color / mirror / Atom feed
* [Feature request] Multiple X servers on one graphics card?
@ 2011-07-30 18:48 Prof. Dr. Klaus Kusche
  2011-07-31 20:09 ` Dave Airlie
  0 siblings, 1 reply; 24+ messages in thread
From: Prof. Dr. Klaus Kusche @ 2011-07-30 18:48 UTC (permalink / raw)
  To: dri-devel, airlied

Mainboards with 4 or even up to 7 PCIe x8 or x16 slots are available
today, and graphics cards with 3 to 5 outputs are also common.

Such a combination would make a very attractive classroom server
for up to 25 pupils/students, cheaper than any other solution,
much easier to administrate than a network of single-seat PC's,
and much faster w.r.t. graphics than a server with thin clients.
We would be highly interested in such a solution
(I'm a professor for computer science at a technical high school
and university of applied sciences),
and I'm currently investigating the possibilities for that.

Unfortunately, currently only Xephyr can be used for that,
which doesn't support hardware acceleration
(and hence makes e.g. Gnome 3 unhappy and video playback slow).

There once was a patch to allow one X server per graphics card
output:
http://www.facebook.com/note.php?note_id=110388492307351
http://people.freedesktop.org/~airlied/multiseat/

However, this patch never made it to mainline
and no longer applies cleanly.


Now the question is:

* Are there any plans or activities to port these patches
to recent kernels? To include these patches or something similar
in the official linux kernel any time soon?

* How much work (and how complex/difficult) would it be to port
these patches to the current linux kernel?
Could that be assigned to a student?

* Is there anyone who is experienced in that area of the kernel
and would implement that (and push it to the official kernel),
perhaps with some financial support (how much would that cost)?


I'd just need the base functionality:

* Static configuration of render devices (via kernel boot parameter?)
or even just one hardcoded device / X server per graphics card output,
no need to assign devices to output combinations dynamically.

(perhaps being able to assign symbolic links to the device nodes
based on card and output number with udev would be nice)

* No need to have any gdm / consolekit support for that.

* ATI radeon only.


Background:
The competition is offering exactly that to us:
The beast is called "Microsoft MultiPoint Server". It is a product
created especially for the educational market (and seems to be quite
successful there), but also offered for small offices.

Technically, it is a multi-user Windows server supporting up to 20
local users, each user being assigned one port of a local graphics card
(or one USB graphics card) and a USB keyboard and mouse.

It explicitely provides one user per graphics output port,
not just per card, exactly what I would like to have for linux.

So I'd need some linux equivalent to compete with that w.r.t.
number of seats per PC/server to get a linux classroom installed
at our school instead of Windows...


Many thanks in advance for your help!

-- 
Prof. Dr. Klaus Kusche
Private address: Rainstraße 9/1, 88316 Isny, Germany
+49 7562 6211377 Klaus.Kusche@computerix.info http://www.computerix.info
Office address: NTA Isny gGmbH, Seidenstraße 12-35, 88316 Isny, Germany
+49 7562 9707 36 kusche@nta-isny.de http://www.nta-isny.de

^ permalink raw reply	[flat|nested] 24+ messages in thread
* Re: [Feature request] Multiple X servers on one graphics card?
@ 2011-08-02 13:34 Tomasz Borowik
  0 siblings, 0 replies; 24+ messages in thread
From: Tomasz Borowik @ 2011-08-02 13:34 UTC (permalink / raw)
  To: dri-devel

I wonder if a custom window manager wouldn't be enough? Using
multi-pointer and locking each focus group to a given screen, making
sure that no one can interfere with anyone else. If the wm is root it
should be capable of spawning programs of different user privileges on
each screen. Of course that is far less insulated and in effect
probably less secure, but it should be easy to do and might be much
more stable, also it should work on whatever hardware you give it.

Tomasz Borowik

^ permalink raw reply	[flat|nested] 24+ messages in thread
* [Feature request] Multiple X servers on one graphics card?
@ 2011-08-03  6:35 Prof. Dr. Klaus Kusche
  0 siblings, 0 replies; 24+ messages in thread
From: Prof. Dr. Klaus Kusche @ 2011-08-03  6:35 UTC (permalink / raw)
  To: dri-devel, timon37, chithanh

Tomasz Borowik <timon37 at gmail.com> wrote:
 > I wonder if a custom window manager wouldn't be enough? Using
 > multi-pointer and locking each focus group to a given screen, making
 > sure that no one can interfere with anyone else. If the wm is root it
 > should be capable of spawning programs of different user privileges on
 > each screen. Of course that is far less insulated and in effect
 > probably less secure, but it should be easy to do and might be much
 > more stable, also it should work on whatever hardware you give it.

Chi-Thanh Christopher Nguyen <chithanh at gentoo.org> wrote:
 > I think with MPX and pointer barriers some parts are already in place
 > to do
 > multiseat with zaphod. Though I don't know how well MPX and pointer
 > barriers
 > work together. Applications grabbing input might cause issues too.

It's more than that:
* You need multiple keyboards, each assigned to one screen.
* You want multiple X servers running under different uid's
to separate users and access rights cleanly.
Even if (with Tomasz's approach) the applications are running with
different uid's, you still need to give all users full access to
the X server, and the X server was not designed for serving multiple
users in a safe way.

And yes, input grabbing is a problem, perhaps the most serious one
(at least, you really want to have input grabbing when entering
login passwords...).

The current solution (one X server per card and one Xephyr
per screen / user) solves all the input problems and offers
almost perfect user separation, and is 100 % compatible
with standard X applications, wm's and desktops.
It also runs on anything supported by X.
However, it offers no hardware acceleration, which is a problem
for modern desktops, video applications etc. (in fact, I tried,
that's no serious problem for a single Xephyr on a fast machine
where the CPU suffices to render in software and copy each frame,
but it most likely becomes a problem on a multiuser machine where
CPU and memory bandwidth is shared between many users).

So the question is: How can we preserve what Xephyr offers now
and add what it lacks?

Klaus.

P.S.: I'm not on the list. Please include me in To: or Cc:.

-- 
Prof. Dr. Klaus Kusche
Private address: Rainstraße 9/1, 88316 Isny, Germany
+49 7562 6211377 Klaus.Kusche@computerix.info http://www.computerix.info
Office address: NTA Isny gGmbH, Seidenstraße 12-35, 88316 Isny, Germany
+49 7562 9707 36 kusche@nta-isny.de http://www.nta-isny.de

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2011-08-03 19:25 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-30 18:48 [Feature request] Multiple X servers on one graphics card? Prof. Dr. Klaus Kusche
2011-07-31 20:09 ` Dave Airlie
2011-08-01  8:14   ` Prof. Dr. Klaus Kusche
2011-08-01 19:41   ` Prof. Dr. Klaus Kusche
2011-08-01 19:47     ` Dave Airlie
2011-08-01 20:22       ` Alan Cox
2011-08-02  8:17         ` Prof. Dr. Klaus Kusche
2011-08-02 10:26           ` Alan Cox
2011-08-02 10:28             ` Rafał Miłecki
2011-08-02 11:10               ` Prof. Dr. Klaus Kusche
2011-08-02 15:27                 ` Michel Dänzer
2011-08-02 11:54             ` Prof. Dr. Klaus Kusche
2011-08-02 15:43         ` Christoph Bumiller
2011-08-02 12:59     ` Alex Deucher
2011-08-02 14:22       ` Prof. Dr. Klaus Kusche
2011-08-02 14:34         ` Alex Deucher
2011-08-02 15:28           ` Prof. Dr. Klaus Kusche
2011-08-02 15:48             ` Alex Deucher
2011-08-02 19:11               ` Prof. Dr. Klaus Kusche
2011-08-03 17:51                 ` Alex Deucher
2011-08-03 19:25                   ` Prof. Dr. Klaus Kusche
2011-08-02 23:31               ` Chi-Thanh Christopher Nguyen
  -- strict thread matches above, loose matches on Subject: below --
2011-08-02 13:34 Tomasz Borowik
2011-08-03  6:35 Prof. Dr. Klaus Kusche

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.