Re: [PATCH 28/49] tty: Add a new file /proc/tty/consoles

From: Al Viro
Date: Sat Oct 23 2010 - 08:26:30 EST


On Sat, Oct 23, 2010 at 02:00:38PM +0200, Jiri Slaby wrote:

> > Please, don't. Even leaving aside the fact that it's mind-bogglingly
> > broken (->private_data can be _ANYTHING_, including arbitrary number cast
> > to pointer), you really shouldn't screw your way through the descriptor
> > table in the first place.
> >
> > Strongly NACKed.
>
> Well, our complains are -ETOOLATE -- it's commit f4a3e0bceb57466c
> upstream. So please fix this up.

FVO "fix" equal to "revert". Belated review:

a) global variable depending on stdin of the last opener? Affecting
output of read(2)? Really?

b) iterator is broken; list should be locked in ->start(), unlocked
in ->stop() and *NOT* unlocked/relocked in ->next()

c) ->show() ought to do nothing in case of ->device == NULL, instead
of skipping those in ->next()/->start()

d) regardless of the merits of the bright idea about asterisk at that
line in output *and* regardless of (a), the implementation is not only
atrociously ugly, it's actually very likely to be a roothole. Verifying
that Cthulhu knows what number happens to be address of a tty_struct by
blindly dereferencing memory at that address... Ouch.

Please revert that crap.
--
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/