Re: [RFC] Input: implement sysrq as an input handler

Dmitry Torokhov
2010-03-19T18:03:28Z

On Fri, Mar 19, 2010 at 01:06:41PM -0300, Henrique de Moraes Holschuh wrote:
> On Thu, 18 Mar 2010, Dmitry Torokhov wrote:
> > On Thu, Mar 18, 2010 at 09:00:43PM -0300, Henrique de Moraes Holschuh wrote:
> > > Any chance of the user being able to avoid the SysRQ events getting to the
> > > handle, e.g. by opening the input device in exclusive mode or something like
> > > that?
> >
> > Yes, it is a possible to suppress SysRq by grabbing an input device.
> > This possibility exisst with the current implementation too though -
> > after all legacy keyboard driver implemented as an input handler as
> > well.
> >
> > ... or am I answering a question different from the one you asked? ;)
>
> No, that's exactly what I wanted to know.
>
> What about SAK? That thing *has* to be untrappable.
>

On what level untrapable? And what exactly is SAK? There is not a
special key, at least not in general case, it is an action assigned to a
key comboi. Root can "trap" legacy keyboard SAK with loadkeys; it can
also disable sysrq, unload modules and do other nasty things. But
ordinary users can not trap it.

> Even for the SysRQ debug events, I'd feel better if we could have a class of
> system input handlers that cannot be suppressed to use for these things.

That would require moving "these things", including their state
machines, into input core otherwise it would not know what events can be
trappable and which should be passed through. Or we should get rid of
EVIOCGRAB.

Given the fact that event devices are accessible only to root I think
that current behavior is acceptable.

--
Dmitry