[PATCH] qxl: rewrite framebuffer support
Dave Airlie
airlied at gmail.com
Wed May 6 20:09:19 PDT 2015
On 5 May 2015 at 21:52, Gerd Hoffmann <kraxel at redhat.com> wrote:
> Completely different approach: Instead of encoding each and every
> framebuffer update as spice operation simply update the shadow
> framebuffer and maintain a dirty rectangle. Also schedule a worker
> to push an update for the dirty rectangle as spice operation. Usually
> a bunch of dirty rectangle updates are collected before the worker
> actually runs.
>
> What changes: Updates get batched now. Instead of sending tons of
> small updates a few large ones are sent. When the same region is
> updated multiple times within a short timeframe (scrolling multiple
> lines for example) we send a single update only. Spice server has an
> easier job now: The dependency tree for display operations which spice
> server maintains for lazy rendering is alot smaller now. Spice server's
> image compression probably works better too with the larger image blits.
>
> Net effect: framebuffer console @ qxldrmfb is an order of magnitude
> faster now.
>
> Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
Looks good, I often wondered if we should have done this, spice
protocol overhead
seemed quite high.
I'll merge this into drm-next.
Dave.
More information about the dri-devel
mailing list