>Maybe the solution for do_getitimer is something like this:
Doing that timer_exires() could get the timer_lock while it_real_fn() is
running. At the time it_real_fn() is running, timer_expires could return 0
while it should return 1 because the itimer is on the fly.
>As for setitimer, it could use mod_timer instead of add_timer.
Doing that we could get the same SMP lockup because it_real_fn() will
continue to add_timer() while we could have just inserted it in setitimer
with mod_timer() while the top of it_real_fn() was running. I see the
atomic_bh stuff a strightforward clean soultion right now...
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/