qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] console muti-head some more design input
@ 2013-11-19  6:24 Dave Airlie
  2013-11-19  8:11 ` Gerd Hoffmann
  0 siblings, 1 reply; 16+ messages in thread
From: Dave Airlie @ 2013-11-19  6:24 UTC (permalink / raw)
  To: Gerd Hoffmann, qemu-devel@nongnu.org

So I've started banging my head against using QemuConsole as the
container for a single output, and have been left with the usual 10
ways to design things, but since I don't want to spend ages
implementing one way just to be told its unacceptable it would be good
to get some more up front design input.

Current code is in
http://cgit.freedesktop.org/~airlied/qemu/log/?h=virtio-gpu-multiconsole

So I felt I had a choice here for sharing a single output surface
amongst outputs:

a) have multiple QemuConsole reference multiple DisplaySurface wihch
reference a single pixman image,
b) have multiple QemuConsole reference a single DisplaySurface which
reference a single pixman image.

In either case we need to store, width/height of the console and x/y
offset into the output surface somewhere, as the output dimensions
will not correspond to surface dimensions or the surface dimensions
won't correspond to the pixman image dimensions

So I picked (b) in my current codebase, once I untangled a few
lifetimes issues (replace_surface - frees the displaysurface == bad,
this is bad in general), I've stored the x/y/w/h in the QemuConsole
(reused the text console values for now),

Another issue I had is I feel the console layer could do with some
sort of subclassing of objects or the ability to store ui layer info
in the console objects, e.g. I've added a ui_priv to the
DisplaySurface instead of having sdl2.c end up with SDL_Texture array
and having to dig around to find it.

At the moment this is rendering a two-head console for me, with
cursors, with virtio-vga kernel and Xorg modesetting driver persuaded
to work, but I'd really like more feedback on the direction this is
going, as I get the feeling Gerd you have some specific ideas on how
this should all work.

Dave.

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

end of thread, other threads:[~2013-11-27 14:24 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-19  6:24 [Qemu-devel] console muti-head some more design input Dave Airlie
2013-11-19  8:11 ` Gerd Hoffmann
2013-11-20  2:59   ` Dave Airlie
2013-11-20  4:06     ` John Baboval
2013-11-20  5:17       ` Dave Airlie
2013-11-20  5:18         ` Dave Airlie
2013-11-20  8:12     ` Gerd Hoffmann
2013-11-20 14:32       ` John Baboval
2013-11-20 15:14         ` Gerd Hoffmann
2013-11-20 15:49           ` John Baboval
2013-11-22  8:36             ` Gerd Hoffmann
2013-11-21  0:45           ` Dave Airlie
2013-11-22  8:41             ` Gerd Hoffmann
2013-11-27  4:29               ` Dave Airlie
2013-11-27  7:11                 ` Gerd Hoffmann
2013-11-27 14:23                 ` John Baboval

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).