Re: tty: add 'active' sysfs attribute to tty0 and console device

From: Alan Cox
Date: Tue Nov 16 2010 - 17:57:36 EST



> > So we fix the ioctl interface, it's not exactly hard to do now is it.
>
> Sorry, the WAITEVENT stuff interface you created is unusably broken:
>
> a) it's a sleeping ioctl which makes it unusable in anything but the
> most trivial applications, because most programs need to respond to
> more than once wakeup event. Of course, you can then introduce threads
> but that's horrible.
>
> b) It loses events, because events that happen after you woke up and
> before you go back into WAITEVENT are completely lost. And those
> events might actually be relevant, since they might be the most recent events
> that happened. And those tend to be ones that matter.

So those are both trivial enough to fix as far as I can see but by the
sound of it neither actually solve what you want to do.

> Kay's interface also drops events, but only historic events that happened
> but aren't current anymore. And that's a good thing, because when you
> track which VT is in the foreground for presentation, or for permission
> management purposes then you care little of who else should have had
> access in the past but didn't get it. You are only interested in the most
> recent update, which is what Kay's interface gives you.

No Kay's interface gives you some random reasonably recent answer that
could well be wrong.

> Kay's interface is not intended to be useful for logging purposes. It is
> useful to track VT changes for service activation, for permission
> management.

You wish to do permission management based upon stale unlocked data,
yeah that sounds about the standard of some of the current shipping
desktops.

> Well, the suff it provides is purely informational. You cannot actually
> influence the TTY in anyway, you can just watch which VT is currently
> active.

Try that with "keystrokes" for example. its a bogus argument.

> I am sorry, but WAITEVENT doesn't work for *any* case. It is completely
> broken. Have you actually ever tried to use it yourself? Do it. Write me
> a race-free program with it that tracks VT switches and i'd be amazed!

You have to hold the vt switch locks, but that is unavoidable.

> events. And voila, you'll have created Kay's interface.

Which also doesn't work reliably and you want to use it for permissions
management !

Describe this permission management you are doing please.

Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/