Re: [announce 7/7] fbsplash - documentation

From: Michal Januszewski
Date: Wed Mar 09 2005 - 19:29:28 EST

On Wed, Mar 09, 2005 at 04:40:09PM +0100, Arnd Bergmann wrote:

> Ok, I now saw that you call call_usermodehelper with wait==1. Why is that
> necessary? If you don't wait there, you don't need any hacks around the
> console semaphore, because the helper will simply wait for change_console
> to finish.

That could work, assuming that:
a) the helper can always finish unpacking the image before
change_console releases the semaphore
b) the console is not redrawn at one point before change_console is
finished (I'm sorry, I don't have time to check that right now)

If one of this assumptions is wrong, we would end up with first
displaying the wrong background picture and then quickly painting
the new one (I doubt this would make a good impression on the user..).

> > What are the alternatives to the ioctl? A relatively clean way of
> > feeding the data back to the kernel would be using sysfs. However, to
> > make it sane we would have to export the various components of struct
> > vc_splash in /sys/class/tty/tty<x> (otherwise, we would probabky have
> > to pass aggreaget data types through a sysfs entry -- something that is
> > IMO much worse than an ioctl). That however could be a little
> > problematic -- tty_class is currently defined as a class_simple.
> > To add entries other than the standard 'dev' we would have to define a
> > completely new class, right? That sounds like a rather intrusive
> > change..
> Right. I don't think that sysfs is the right interface for this problem.
> For a short moment I had the idea that you could write an escape sequence
> to the tty device, but that would race against the regular output.
> An ioctl on the tty device is probably the best you can do here, but
> if that's not possible, creating a misc device in order to do ioctl on it
> is a rather ugly hack.

Agreed, that might not be the nicest thing to do, but it just seems
there isn't much of a choice in this situation.

I'm going to be away for the next 10 days or so. When I get back I'll
start testing some of the proposed changes. Maybe by using things like
firmware_request it would at least be possible to make the splash
interface a little simpler.

Live long and prosper.
Michal 'Spock' Januszewski Gentoo Linux Developer
cell: +48504917690
JID: spock@xxxxxxxxxxxxx freenode: #gentoo-dev, #gentoo-pl

Attachment: pgp00000.pgp
Description: PGP signature