Re: Linux-2.2.2-pre2..

Andrea Arcangeli (andrea@e-mind.com)
Sun, 7 Feb 1999 17:45:15 +0100 (CET)


On Sun, 7 Feb 1999, Andrea Arcangeli wrote:

>The bug is that do_tty_hanghup() does a lock_kernel() in a tq_scheduler
>with a current->lock_depth > -1. So lock_kernel() does nothing there and
>so do_tty_hangup() was racing with the process that run the schedule()
>with the kernel lock just held.

It still seems that do_tty_hangup() is racing with the other CPU due
lock_kernel() that does nothing, but now I don't understand very well if
do_tty_hangup() is that's a bug or if it's the side effect of the
real bug. Maybe do_tty_hangup() was supposed to run recalled only by the
tty code and not from schedule()?

Just a question, why are we queueing the hangup task to tq_scheduler and
tq_timer? Which is the race we are avoiding doing that?

And what is the tty->link in some word? It point to a a new tty that uses
the ->other driver. And the o_tty->link point to us. But I haven't
understood more about it so far...

I hope my little information make sense and I hope to not causing you
waste of time.

Andrea Arcangeli

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