Re: repeat a function after fixed time period

From: linux-os
Date: Thu Mar 24 2005 - 07:11:40 EST


On Wed, 23 Mar 2005, sounak chakraborty wrote:

--- linux-os <linux-os@xxxxxxxxxxxx> wrote:
On Wed, 23 Mar 2005, Arjan van de Ven wrote:

On Wed, 2005-03-23 at 15:56 -0500, linux-os wrote:
static void start_timer(void)
{
if(!atomic_read(&info->running))
{
atomic_inc(&info->running);

same race.

No such race at all.

here there is one; you use add_timer() which isn't
allowed on running
timers, only mod_timer() is. So yes there is a
race.


Well add_timer() is only executed after the timer
has expired
or hasn't started yet so the "isn't allowed" is
pretty broad.
If I should use mod_timer(), then there are a _lot_
of buggy
drivers in the kernel because that's how a lot
repeat the
sequence. Will mod_timer() actually restart the
timer???

If so, I'll change it and thank you for the help.


i have applied the code
as i was intedded to call a function repeated ly in
fork.c i written the code over there
it compiled smoothly
but while booting
it is showing
kernel panic no init found
kjournal starting .commit interval after 5 seconds

sounak


*** AWWK *** Sanity check failed.


Cheers,
Dick Johnson
Penguin : Linux version 2.6.11 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/