From: Eric Dumazet <eric.dumazet@gmail.com>
To: hadi@cyberus.ca
Cc: Changli Gao <xiaosuo@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
Patrick McHardy <kaber@trash.net>,
Tom Herbert <therbert@google.com>,
netdev@vger.kernel.org
Subject: Re: [PATCH RFC] act_cpu: packet distributing
Date: Thu, 15 Jul 2010 18:54:57 +0200 [thread overview]
Message-ID: <1279212897.2496.133.camel@edumazet-laptop> (raw)
In-Reply-To: <1279198139.4510.710.camel@bigi>
Le jeudi 15 juillet 2010 à 08:48 -0400, jamal a écrit :
> On Wed, 2010-07-14 at 12:17 +0800, Changli Gao wrote:
>
> > Thanks, I'll try. It is a write critical section, and for me it is
> > difficult to convert this lock to RCU. Could you show me some
> > examples?
>
> RCU maybe a little trickier here Eric. Actions could be shared i.e.
> example, it is possible to have a policer action restricting rates for a
> group of flows across multiple netdevices etc. Since action stats get
> written to by different CPUs concurrently. It could be probably done if
> one was to implement per-cpu stats which get summed-up when user space
> asks.
It's certainly tricky, but is act_cpu useful in its current shape, based
on an infrastructure that had to use a lock because of exact
rates/accounting ?
I dont understand how distributing packets to different cpus, if going
through a central lock can be an improvement. Changli patches are most
of the time not documented, and no performance data is provided.
Even if we solve this locking problem, using percpu variables, act_cpu
hits another problem :
The socket refcount, taken by the 'master' cpu, and released by the
consumer cpu.
RFS provides sort of a lazy flow-based distribution without central lock
or cache line ping pongs. Why Changli dont use this, we dont know yet.
next prev parent reply other threads:[~2010-07-15 16:55 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-14 3:17 [PATCH RFC] act_cpu: packet distributing Changli Gao
2010-07-14 3:27 ` Changli Gao
2010-07-14 3:41 ` Eric Dumazet
2010-07-14 4:17 ` Changli Gao
2010-07-14 4:30 ` Eric Dumazet
2010-07-15 12:48 ` jamal
2010-07-15 16:54 ` Eric Dumazet [this message]
2010-07-15 23:30 ` Changli Gao
2010-07-16 4:42 ` Eric Dumazet
2010-07-16 13:16 ` jamal
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1279212897.2496.133.camel@edumazet-laptop \
--to=eric.dumazet@gmail.com \
--cc=davem@davemloft.net \
--cc=hadi@cyberus.ca \
--cc=kaber@trash.net \
--cc=netdev@vger.kernel.org \
--cc=therbert@google.com \
--cc=xiaosuo@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox