From: jamal <hadi-fAAogVwAN2Kw5LPnMra/2Q@public.gmane.org>
To: Herbert Xu <herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
Cc: kaber-dcUjhNyLwpNeoWH0uzbU5w@public.gmane.org,
davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org,
netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
johannes-cdvu00un1VgdHxzADdlk8Q@public.gmane.org,
linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 20/31]: pkt_sched: Perform bulk of qdisc destruction in RCU.
Date: Sun, 20 Jul 2008 11:35:19 -0400 [thread overview]
Message-ID: <1216568119.4847.101.camel@localhost> (raw)
In-Reply-To: <E1KKZmE-0000ty-00-XQvu0L+U/CjiRBuR/1fSEKKkPtS2pBon@public.gmane.org>
On Sun, 2008-20-07 at 22:20 +0800, Herbert Xu wrote:
> Not all actions :) That nat action for example wasn't intended to
> be shared at all. In fact I still need to submit a patch to make
> it skip the shared hash as otherwise it simply won't scale as the
> number of nat actions increases (e.g., to 256K).
True, sharing in the case of nat will cause scaling challenges because
there is a per-action locking. So you dont want to share in that case.
Let me clarify the global "sharedness" of actions, because i dont think
there is an issue:
All actions (on a per-type hash table basis) have an index.
You create filter rule X and specify action nat.
You may specify the index of the action when you create the filter X.
If you then create another filter rule Y, also using the same action
index, then that nat action is shared between rule X and rule Y[1].
If you dont specify the index a new nat action is created.
So in essence, if you create 256K rules each with an action and
as long as you dont specify the action index, you should be fine
because none will be shared.
The only scaling thing i can think of is to try and make the nat action
hash table large to reduce the init lookup. Other than that, once the
action is bound to a filter lookup cost is zero.
cheers,
jamal
[1]This is useful for tow reasons:
a) memory saving purposes: If you dont care that much about performance
or on a uniprocessor machine, one action would just be sufficient for
many rules.
b) accounting purposes; as you know qdiscs/filters/actions are
per-device. Over the years, a need has arosen from some users to have a
"per system" accounting (refer to the IMQ/IFB approach). Eg, if i wanted
the policer action to account for ingress eth0 and egress eth1 for a
user, i couldnt do it without some acrobatics.
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2008-07-20 15:35 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-17 12:17 [PATCH 20/31]: pkt_sched: Perform bulk of qdisc destruction in RCU David Miller
[not found] ` <20080717.051726.226040470.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-07-17 13:03 ` Patrick McHardy
[not found] ` <487F4327.1000107-dcUjhNyLwpNeoWH0uzbU5w@public.gmane.org>
2008-07-17 13:12 ` David Miller
2008-07-17 13:48 ` Patrick McHardy
[not found] ` <487F4DA6.6010009-dcUjhNyLwpNeoWH0uzbU5w@public.gmane.org>
2008-07-17 22:36 ` David Miller
[not found] ` <20080717.153609.142867331.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-07-17 23:58 ` Patrick McHardy
2008-07-17 13:35 ` jamal
2008-07-17 14:02 ` Patrick McHardy
[not found] ` <487F50EC.80008-dcUjhNyLwpNeoWH0uzbU5w@public.gmane.org>
2008-07-17 22:24 ` David Miller
[not found] ` <20080717.152447.89672084.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-07-17 23:48 ` Patrick McHardy
2008-07-18 13:10 ` jamal
2008-07-18 13:27 ` jamal
2008-07-18 21:05 ` David Miller
2008-07-20 15:16 ` jamal
2008-07-20 17:25 ` David Miller
[not found] ` <20080720.102534.246150854.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-07-20 17:34 ` Tomas Winkler
[not found] ` <1ba2fa240807201034u1fbe3343tdcc858f7772d2b39-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-20 17:35 ` David Miller
2008-07-20 22:32 ` jamal
2008-07-20 23:59 ` David Miller
2008-07-21 2:20 ` jamal
2008-07-21 11:20 ` jamal
2008-07-21 16:45 ` David Miller
2008-07-21 11:58 ` Herbert Xu
[not found] ` <E1KKu2D-0002kd-00-XQvu0L+U/CjiRBuR/1fSEKKkPtS2pBon@public.gmane.org>
2008-07-21 13:08 ` jamal
2008-07-21 13:19 ` Herbert Xu
2008-07-21 13:56 ` jamal
2008-07-21 13:58 ` Herbert Xu
[not found] ` <20080721135846.GA11543-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2008-07-21 15:09 ` David Miller
[not found] ` <20080721.080901.214889979.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-07-21 15:22 ` Herbert Xu
2008-07-21 15:26 ` David Miller
[not found] ` <20080721.082627.128593651.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-07-21 16:16 ` Herbert Xu
[not found] ` <20080721161616.GA12938-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2008-07-21 16:25 ` David Miller
2008-07-21 16:43 ` Herbert Xu
2008-07-21 16:51 ` David Miller
[not found] ` <20080721.095124.89249903.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-07-21 17:02 ` Herbert Xu
[not found] ` <20080721170233.GA13417-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2008-07-21 17:08 ` David Miller
[not found] ` <20080721.100821.38432201.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-07-21 17:11 ` Herbert Xu
2008-08-22 6:56 ` Herbert Xu
2008-08-22 7:16 ` David Miller
[not found] ` <20080822.001620.141235108.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-08-22 7:41 ` Herbert Xu
[not found] ` <20080822074115.GB25615-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2008-08-22 10:42 ` David Miller
[not found] ` <20080822.034217.135152551.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2008-08-22 10:47 ` Herbert Xu
2008-08-22 13:52 ` jamal
[not found] ` <20080822065655.GA18471-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2008-08-22 13:43 ` jamal
2008-07-21 17:35 ` David Miller
2008-07-18 17:10 ` Roland Dreier
[not found] ` <adaljzz6ruq.fsf-FYB4Gu1CFyUAvxtiuMwx3w@public.gmane.org>
2008-07-20 14:58 ` jamal
2008-07-20 14:32 ` Herbert Xu
2008-07-20 17:20 ` David Miller
2008-07-20 14:20 ` Herbert Xu
[not found] ` <E1KKZmE-0000ty-00-XQvu0L+U/CjiRBuR/1fSEKKkPtS2pBon@public.gmane.org>
2008-07-20 15:35 ` jamal [this message]
2008-07-21 0:11 ` Herbert Xu
[not found] ` <20080721001119.GA6515-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2008-07-21 2:33 ` jamal
2008-07-21 3:17 ` Herbert Xu
2008-07-21 11:14 ` jamal
2008-07-21 11:36 ` Herbert Xu
[not found] ` <20080721113600.GA10322-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org>
2008-07-21 11:39 ` jamal
2008-07-19 3:59 ` David Miller
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=1216568119.4847.101.camel@localhost \
--to=hadi-faaogvwan2kw5lpnmra/2q@public.gmane.org \
--cc=davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org \
--cc=herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q@public.gmane.org \
--cc=johannes-cdvu00un1VgdHxzADdlk8Q@public.gmane.org \
--cc=kaber-dcUjhNyLwpNeoWH0uzbU5w@public.gmane.org \
--cc=linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/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;
as well as URLs for NNTP newsgroup(s).