Hi Henrique, On Sun, Jun 22, 2008 at 12:38:47PM -0300, Henrique de Moraes Holschuh wrote: > SW_RFKILL_ALL is the "emergency power-off all radios" input event. It must > be handled, and must always do the same thing as far as the rfkill system > is concerned: all transmitters are to go *immediately* offline. > > For safety, do NOT allow userspace to override EV_SW SW_RFKILL_ALL OFF. As > long as rfkill-input is loaded, that event will *always* be processed, and > it will *always* force all rfkill switches to disable all wireless > transmitters, regardless of user_claim attribute or anything else. > > Signed-off-by: Henrique de Moraes Holschuh <hmh@xxxxxxxxxx> > Acked-by: Ivo van Doorn <IvDoorn@xxxxxxxxx> > Cc: Dmitry Torokhov <dtor@xxxxxxx> rfkill_event() is called with handle->dev.event_lock spinlock held and therefore can not sleep. rfkill_epo() takes rfkill mutex and may sleep so it can't be used in the interrupt context. That is the reason why we had tasks for switching rf switches in the first place. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html