[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1435870750.11970.37.camel@edumazet-glaptop2.roam.corp.google.com>
Date: Thu, 02 Jul 2015 22:59:10 +0200
From: Eric Dumazet <eric.dumazet@...il.com>
To: John Fastabend <john.fastabend@...il.com>
Cc: Eric Dumazet <edumazet@...gle.com>,
"David S. Miller" <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Alexei Starovoitov <ast@...mgrid.com>,
Jamal Hadi Salim <jhs@...atatu.com>,
Eric Dumazet <edumazet@...il.com>
Subject: Re: [PATCH net-next 6/6] net_sched: act: remove spinlock in fast
path
On Thu, 2015-07-02 at 09:35 -0700, John Fastabend wrote:
> > + if (gact->tcf_tm.lastuse != jiffies)
> > + gact->tcf_tm.lastuse = jiffies;
>
> I'm missing the point of the if block. Is that really good enough
> for the 32bit system case? I would have expected some wrapper to
> handle it here something like u64_stats_() maybe _u64_jiffies(). Maybe
> after a coffee I'll make sense of it.
>
Point is to not dirty cache line for every packet ?
Doing the test means we attempt dirtying only ~HZ times per second,
which really matters to handle millions of packets per second.
My tests show a good enough performance, not sure we want a percpu thing
for this lastuse field.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists