Subject: Re: wsdisplay on vesafb is slow
To: Aaron J. Grier <agrier@poofygoof.com>
From: Michael Lorenz <macallan@netbsd.org>
List: current-users
Date: 12/26/2006 03:13:05
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

On Dec 26, 2006, at 01:04, Aaron J. Grier wrote:

> On Thu, Dec 21, 2006 at 04:31:24PM -0500, Thor Lancelot Simon wrote:
>
>> On Thu, Dec 21, 2006 at 03:58:18PM -0500, Michael Lorenz wrote:
>>> There was a proposal for a VESA BIOS extension to talk to a blitter
>>> but as far as I remember it never got anywhere.
>>
>> Can't it use VGA text mode for text, at least?
>
> vesafb would cease to be a framebuffer, then, and isn't that the whole
> point of vesafb?

Exactly.

>> The problem is, with wscons attached to vesafb, the console is
>> unusuably slow; with wscons attached to vga, and a direct-hardware-
>> access X server, X11 is unsafe.
>
> so pick your poison.

On macppc we can enable caching for the framebuffer on most models 
which speeds things up considerably. No idea if something similar can 
be done on i386.

> has a PR been filed about the speed issue?

Do you have a fix for it? Or, do you have an idea how to fix it?
There are a few things we could do but those tend have side effects. 
For instance, XFree86 uses a shadow framebuffer to avoid having to read 
from video memory ( which is usually painfully slow ) - gives a nice 
speed boost but costs memory, in vesafb's case kernel memory which may 
or may not be acceptable. If I remember correctly Jared was at least 
looking into supporting it but I'm fairly sure if it's there it's not 
enabled by default.
Another thing would be to define a userland interface to switch video 
modes and colour depth, then teach wsfb to use it.

have fun
Michael
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iQEVAwUBRZDZkcpnzkX8Yg2nAQLTSgf/RKcNkqS4pUf/Tzjp6uCXj3oybhxvvbLc
xM+GRE643GOQn+iKWAgG70dCIZArvum49Op7c0oFFK+sVF950XoKPVZlu1bWFW+7
W8bYCRjSw25IUHGCA2YqSVndfTLQBAMHOa3NduY49j26Wh9P87cd8SiRLJT9tAT+
J4mNezLz7tUNSwFoSO5fH4B/TdOfwetmXGLCldLjdOwTmdwE1ljMs6LY0uscOFYI
SpTZSDCoNr9Cxtd3V4iTJRCBFKAMihdnIFLF3vBQR2s4yHumIvCGd1opF2eaUmNI
NjOC/rWQwWEGv/YY+JDy6eURZJNiz7yMtgDzgLF+qI2KFRE+qEIl4w==
=2oYo
-----END PGP SIGNATURE-----