From: Julian Pidancet <julian.pidancet@citrix.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
Stefano Stabellini <Stefano.Stabellini@eu.citrix.com>
Subject: [Qemu-devel] Re: [[RfC PATCH]] linux fbdev display driver prototype.
Date: Tue, 1 Jun 2010 12:11:36 +0100 [thread overview]
Message-ID: <4C04EAE8.5000509@citrix.com> (raw)
In-Reply-To: <4BFB7814.7040107@redhat.com>
On 05/25/2010 08:11 AM, Gerd Hoffmann wrote:
>> - You should register a Display Allocator and override the
>> create_displaysurface() method like I did in the DirectFB driver.
>> This way you save qemu a data copy. fbdev_render_32() should only be
>> used when the guest framebuffer is not compatible with the physical
>> framebuffer (guest_bpp != physical_bbp || guest_linesize !=
>> physical_linesize).
>
> Isn't a trivial move though. If the console is switched you must stop
> drawing on the framebuffer.
>
> Right now this is easy: just stop copying. Likewise restoring the
> screen when switching back is easy: just copy everything.
>
> If we give out pointers to the framebuffer to other qemu code which
> doesn't know anything about console switching we have to be quite
> careful get things right ...
>
When loosing the focus, you can force display surface reallocation by calling hw_invalidate(), this way you can give qemu a temporary pointer to prevent drawing on the framebuffer.
When switching back, you just have to copy the content of the temporary pointer location to the framebuffer.
Cheers,
Julian Pidancet
prev parent reply other threads:[~2010-06-01 11:09 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-20 20:20 [Qemu-devel] [[RfC PATCH]] linux fbdev display driver prototype Gerd Hoffmann
2010-05-21 10:11 ` [Qemu-devel] " Stefano Stabellini
2010-05-21 10:26 ` Gerd Hoffmann
2010-05-21 19:32 ` Julian Pidancet
2010-05-24 10:05 ` Stefano Stabellini
2010-05-25 7:11 ` Gerd Hoffmann
2010-05-25 9:26 ` Stefano Stabellini
2010-06-01 11:11 ` Julian Pidancet [this message]
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=4C04EAE8.5000509@citrix.com \
--to=julian.pidancet@citrix.com \
--cc=Stefano.Stabellini@eu.citrix.com \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.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).