Why are not processes HUPped when they open /dev/console?

From: Jiri Slaby
Date: Wed Jan 25 2012 - 16:38:43 EST


Hello,

don't you remember by a chance the reason for this test in __tty_hangup:
if (filp->f_op->write != tty_write)

The logic there is not to HUP processes that have this tty open via
/dev/console.

It is there like forever. But now, due to that, processes that do
vhangup of /dev/ttyXYZ wait infinitely if there is some other process
that has the ttyXYZ open through /dev/console. (Due to infinite wait in
tty_ldisc_hangup.)

This happens on some distros on shutdown path because they do vhangup on
all tty[0-8] ttyS[01] and similar.

thanks,
--
js
suse labs
--
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/