[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200912040130.54966.opurdila@ixiacom.com>
Date: Fri, 4 Dec 2009 01:30:54 +0200
From: Octavian Purdila <opurdila@...acom.com>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: netdev@...r.kernel.org,
Arnaldo Carvalho de Melo <acme@...stprotocols.net>
Subject: Re: [PATCH 3/4] llc: use a device based hash table to speed up multicast delivery
On Friday 04 December 2009 00:59:58 you wrote:
> Octavian Purdila a écrit :
> > This patch adds a per SAP device based hash table to solve the
> > multicast delivery scalability issues for the case where the are a
> > large number of interfaces and a large number of sockets (bound to the
> > same SAP) are used.
> >
> > Signed-off-by: Octavian Purdila <opurdila@...acom.com>
> > ---
> > include/net/llc.h | 20 ++++++++++++++++----
> > include/net/llc_conn.h | 1 +
> > net/llc/llc_conn.c | 18 +++++++++++++++++-
> > net/llc/llc_core.c | 3 +++
> > net/llc/llc_sap.c | 11 ++++++-----
> > 5 files changed, 43 insertions(+), 10 deletions(-)
> >
> > diff --git a/include/net/llc.h b/include/net/llc.h
> > index 7940da1..31e9902 100644
> > --- a/include/net/llc.h
> > +++ b/include/net/llc.h
> > @@ -31,6 +31,14 @@ struct llc_addr {
> > #define LLC_SAP_STATE_INACTIVE 1
> > #define LLC_SAP_STATE_ACTIVE 2
> >
> > +#define LLC_SK_DEV_HASH_BITS 10
> > +#define LLC_SK_DEV_HASH_ENTRIES (1<<LLC_SK_DEV_HASH_BITS)
> > +
> > +struct llc_sk_list {
> > + rwlock_t lock;
> > + struct hlist_head list;
> > +};
> > +
>
> This patch introduces a big hash table, and 1024 rwlocks, for IXIACOM need.
>
Yes, that is probably not appropriate for upstream. What would be a good
value?
> Is the problem both on lock contention and lookup ?
Since at this point we are using UP ports contention is not really an issue
for us. I've extrapolated this (lock per hash bucket) based on how locking is
done in other places, like UDP.
--
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