Re: [OOPS][2.5.66bk3+] run_timer_softirq - IRQ Mishandlings - New OOPS w/ timer

From: Petr Vandrovec (vandrove@vc.cvut.cz)
Date: Sun Mar 30 2003 - 12:12:57 EST


On Sun, Mar 30, 2003 at 11:10:48AM -0500, Shawn Starr wrote:
> Function found was: delayed_work_timer_fn (kernel/workqueue.c)
>
> free of pending timer at c7411150
> function=c0138ba0
> Call Trace:
> [<c014d4b4>] timer_hunt+0x84/0x90
> [<c0138ba0>] delayed_work_timer_fn+0x0/0x170
> [<c014fb08>] kfree+0x1c8/0x320
> [<c024f8a6>] release_dev+0x696/0x840
> [<c024f8a6>] release_dev+0x696/0x840

drivers/char/tty_io.c schedules flush_to_ldisc work. This
work can potentially reschedule itself, making call to
flush_scheduled_work() at the end of release_dev()
useless :-(

Unfortunately I have no idea what is that code trying to do -
we already did tty->ldisc.close() and replaced
tty->ldisc with something else when we call flush_scheduled_work(),
so I doubt that work we are waiting for can do anything
useful even if TTY_DONT_FLIP is not set...
                                        Petr Vandrovec
                                        vandrove@vc.cvut.cz

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



This archive was generated by hypermail 2b29 : Mon Mar 31 2003 - 22:00:35 EST