[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <AANLkTikqZTt+jd6X7ZwPBnz0AqDRgP=RNJc5OBtM+Yf_@mail.gmail.com>
Date: Wed, 25 Aug 2010 09:56:03 +0800
From: Yong Zhang <yong.zhang0@...il.com>
To: Oleg Nesterov <oleg@...hat.com>
Cc: linux-kernel@...r.kernel.org, tglx@...utronix.de,
akpm@...ux-foundation.org, mingo@...e.hu, peterz@...radead.org
Subject: Re: [RFC PATCH 1/3] timer: fix comments of try_to_del_timer_sync()
On Wed, Aug 25, 2010 at 12:31 AM, Oleg Nesterov <oleg@...hat.com> wrote:
> Ah, indeed, I forgot. This was another reason for the comment.
>
>> > Please remove "#ifdef CONFIG_SMP" from set_running_timer(), then iirc
>> > it can be used from irq.
>>
>> I have noticed your comments in the commit log, but I think it's about
>> introducing the same semantic of try_to_del_timer_sync() on UP as well
>> as SMP. But this patch is focusing on the current code(SMP special).
>> Not about realizing try_to_del_timer_sync() on UP case. Do we need
>> to do that?
>
> I dunno.
>
> But look, currently try_to_del_timer_sync() is not allowed from interrupt
> even if it works with CONFIG_SMP.
>
> If we "officially" allow it to use from irq, it should work on UP too
OK. I see.
> but
> it doesn't. del_timer() can't hang, but it can never return -1 to indicate
> we hit the running timer.
>
> Consider:
>
> // runs in interrup context
>
> if (try_do_del_timer_sync(&TIMER) > 0)
> kfree(something_which_can_be_used_by_TIMER_func);
>
> This is unsafe on UP.
You are right. It's unsafe here.
I will try to update this patch which introduce try_do_del_timer_sync()
on UP case.
Thanks,
Yong
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists