lkml.org 
[lkml]   [2000]   [Dec]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject2.4.0-test13-pre1 lockup: run_task_queue or tty_io are wrong
Hi,
my 2.4.0-test13-pre1 just stopped answering to my keystrokes.
I've found that it is looping in tqueue_bh and flush_to_ldisc
still again and again.

To my surprise I found that flush_to_ldisc() does

if (test_bit(TTY_DONT_FLIP, &tty_flags)) {
queue_task(&tty->filp.tqueue, &tq_timer);
return;
}

Looks ok. But only until you'll look at run_task_queue().
It now contains

while (!list_empty(list)) {
...
}

So postponing event to next timer tick does not work anymore.
It will stop cycling in run_task_queue and machine is dead
(unless you have some spare CPU).

Is current run_task_queue() behavior intentional, or is it
only bug introduced by changing task queue to list based
implementation?
Thanks,
Petr Vandrovec
vandrove@vc.cvut.cz

P.S.: Yes, I know that I should bought faster computer so that
ldisc buffer does not overflow, but...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 12:52    [W:0.079 / U:0.908 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site