Re: timers

From: Andrew Morton (andrewm@uow.edu.au)
Date: Mon Jun 05 2000 - 01:21:19 EST


Andrey Savochkin wrote:
>
> Hi Andrew,

Hello Andrey.

> On Sun, Jun 04, 2000 at 02:06:00AM +1000, Andrew Morton wrote:
> > All the attempts to eliminate timer_exit() have ended up too complex to
> > countenance, so it looks like we're stuck with it.
>
> I personally don't think that it is _too_ complex.
> It makes code a bit more complex, but the changes without deadlock detection
> and other debugging stuff may fit into a dozen or two dozen lines.

I guess so. But it only really buys us two things:

- no more timer_exit()
- safe wrt module removal.

> And what about your idea to turn most timers into synchronous ones?

It dies. It was a lazy idea anyway - fix 100 races, introduce 10
deadlocks :(

The Right Thing To Do is to carefully go through all the timer handlers
and fix 'em. I'll review-n-repair the core things (net, ide, scsi,
video) for 2.4. The important stuff is mostly clean anyway, except for
drivers/net.

That will leave a lot of non-core things with potential races, so the
moral for 2.4 is "don't play MP3s from floppies on your mission critical
8-way server".

An architecturally better solution would be to change the timer handlers
so they return a meaningful value to run_timer_list. That would mean
touching hundreds of files. A team of four could do it in an evening
in the Cathedral. Not so easy in the Bazaar!

-
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/



This archive was generated by hypermail 2b29 : Wed Jun 07 2000 - 21:00:20 EST