On Tue, Apr 12, 2016 at 06:24:10AM +0000, Miod Vallat wrote:
> > wskbd_enable (calls pckbd_enable) does not appear to be called from
> > wskbd_activate, perhaps just calling wskbd_enable from there would be
> > better? (as a matter of fact, wskbd_activate doesn't really do much at
> > all except set sc_dying=1, and I'm not sure where that gets reset.)
> 
> Nooooooo! wskbd_enable() is not used in the physical device activation
> path, but in the logical path, so that keyboard input gets ignored
> unless its device is actually opened. If you are running with serial
> console and no getty listening to /dev/ttyC*, for example, then
> wskbd_enable() should not get invoked at all!
> 
> Now, some of the work done in wskbd_enable() might be worth doing in
> wskbd_activate(), but be very careful when changing this.
> 

That is the same conclusion I came to after reading it more.

I think the best idea is to proceed with the diff as posted, with
the added check to make sure the keyboard is enabled, and to always
call config_activate_children on all paths through pckbd_activate?

In other words, no changes to wskbd_enable or wskbd_activate.

Sound right?

Reply via email to