lkml.org 
[lkml]   [2009]   [Feb]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFT 2/4] Add mod_timer_noact

* David Miller <davem@davemloft.net> wrote:

> From: Ingo Molnar <mingo@elte.hu>
> Date: Wed, 18 Feb 2009 12:01:44 +0100
>
> > * David Miller <davem@davemloft.net> wrote:
> >
> > | Introduce mod_timer_noact() which for example is to replace
> > | the calls to del_timer()/add_timer() in
> > | __nf_ct_refresh_acct(). It works like mod_timer() but doesn't
> > | activate or modify the timeout of an inactive timer which is
> > | the behaviour we want in order to be able to use timers as a
> > | means of synchronization in nf_conntrack.
> >
> > It does not mention the overhead to the regular timer interfaces
> > at all, nor does it explain the reasons for this change
> > adequately.
>
> You (conveniently) skipped this part of his commit message, so
> I guess this is the part you didn't read very carefully:
>
> A later patch will modify __nf_ct_refresh_acct() to use
> mod_timer_noact() which will then save one spin_lock_irqsave()
> / spin_lock_irqrestore() pair per conntrack timer update. This
> will also get rid of the race we currently have without adding
> more locking in nf_conntrack.
>
> The whole point is to avoid two spin_lock_irqsave() sequences, thus
> taking the timer locks twice.
>
> So Ingo, when you say in response:
>
> Why don't you use?
>
> if (del_timer())
> add_timer();
>
> you really look foolish and, in fact, disrespectful to Stephen.
>
> This was my objection to your email, it proved that you didn't
> really read his changelog message. He explained perfectly well
> what the final goal was of his changes.
>
> And you have this knee-jerk reaction quite often.

You accusing me of knee-jerk reaction is the joke of the century
;-)

Anyway, it's all handled, you just need to read the rest of the
thread.

Thanks,

Ingo


\
 
 \ /
  Last update: 2009-02-18 22:55    [W:0.503 / U:2.000 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site