2008-02-21 09:43:13

by Markus Armbruster

[permalink] [raw]
Subject: [PATCH 0/2] xen pvfb: Para-virtual framebuffer, keyboard and pointer

This is a pair of Xen para-virtual frontend device drivers:
drivers/video/xen-fbfront.c provides a framebuffer, and
drivers/input/xen-kbdfront provides keyboard and mouse.

The backends run in dom0 user space.

I started with the Xen version at
http://xenbits.xensource.com/linux-2.6.18-xen.hg?rev/ca05cf1a9bdc

Differences to that Xen version, for those who care:

* Rewritten on top of fb deferred I/O

* IRQ handler names visible in /proc and /sys match the driver names.

* Use framebuffer helper functions appropriate for framebuffer in
system RAM.

* write() refreshes the framebuffer properly.

* off-by-one height of some screen refreshs fixed.

* Crash when register_framebuffer() fails fixed.

* Test for empty ring in input_handler() fixed.

* Deadlock in xen-kbdfront resume fixed.

* General clean up.

I have a step-by-step patch series from that Xen version to my
version, if anybody is interested. Might be useful for reviewers
familiar with the Xen version.

The patch consists of two parts:

1. fbdev: Make deferred I/O work as advertized

I need fb deferred I/O, but is utterly broken. A fix has been
floating around on linux-fbdev-devel as part of a larger patch,
which as far as I know has not been merged anywhere, yet. This is
just the fix.

2. xen pvfb: Para-virtual framebuffer, keyboard and pointer driver

The actual drivers.


2008-02-21 11:52:56

by Markus Armbruster

[permalink] [raw]
Subject: Re: [PATCH 0/2] xen pvfb: Para-virtual framebuffer, keyboard and pointer

Forgot to mention: This patch depends on

Subject: [PATCH] xen: Make xen-blkfront write its protocol ABI to xenstore
From: Markus Armbruster <>
Date: Thu, 06 Dec 2007 14:45:53 +0100

http://lkml.org/lkml/2007/12/6/132

Sorry!

2008-02-21 19:47:56

by Jeremy Fitzhardinge

[permalink] [raw]
Subject: Re: [PATCH 0/2] xen pvfb: Para-virtual framebuffer, keyboard and pointer

Markus Armbruster wrote:
> Forgot to mention: This patch depends on
>
> Subject: [PATCH] xen: Make xen-blkfront write its protocol ABI to xenstore
> From: Markus Armbruster <>
> Date: Thu, 06 Dec 2007 14:45:53 +0100
>
> http://lkml.org/lkml/2007/12/6/132
>
> Sorry!

Sorry, I haven't pushed this upstream yet, since there didn't seem to be
any particular urgency. What's the dependency?

J

2008-02-21 20:50:41

by Markus Armbruster

[permalink] [raw]
Subject: Re: [PATCH 0/2] xen pvfb: Para-virtual framebuffer, keyboard and pointer

Jeremy Fitzhardinge <[email protected]> writes:

> Markus Armbruster wrote:
>> Forgot to mention: This patch depends on
>>
>> Subject: [PATCH] xen: Make xen-blkfront write its protocol ABI to xenstore
>> From: Markus Armbruster <>
>> Date: Thu, 06 Dec 2007 14:45:53 +0100
>>
>> http://lkml.org/lkml/2007/12/6/132
>>
>> Sorry!
>
> Sorry, I haven't pushed this upstream yet, since there didn't seem to
> be any particular urgency. What's the dependency?
>
> J

Here's the description again:

Frontends are expected to write their protocol ABI to xenstore. Since
the protocol ABI defaults to the backend's native ABI, things work
fine without that as long as the frontend's native ABI is identical to
the backend's native ABI. This is not the case for xen-blkfront
running 32-on-64, because its ABI differs between 32 and 64 bit, and
thus needs this fix.

I can break the dependency by putting the same bug that is now in
xen-blkfront into xen-fbfront and xen-kbdfront.

2008-02-21 22:36:32

by Jeremy Fitzhardinge

[permalink] [raw]
Subject: Re: [PATCH 0/2] xen pvfb: Para-virtual framebuffer, keyboard and pointer

Markus Armbruster wrote:
> Here's the description again:
>
> Frontends are expected to write their protocol ABI to xenstore. Since
> the protocol ABI defaults to the backend's native ABI, things work
> fine without that as long as the frontend's native ABI is identical to
> the backend's native ABI. This is not the case for xen-blkfront
> running 32-on-64, because its ABI differs between 32 and 64 bit, and
> thus needs this fix.
>
> I can break the dependency by putting the same bug that is now in
> xen-blkfront into xen-fbfront and xen-kbdfront.
>

Right, I see. The dependency is on the protocols.h changes.

J