[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130328191050.GB20223@order.stressinduktion.org>
Date: Thu, 28 Mar 2013 20:10:50 +0100
From: Hannes Frederic Sowa <hannes@...essinduktion.org>
To: David Miller <davem@...emloft.net>
Cc: eric.dumazet@...il.com, brouer@...hat.com, netdev@...r.kernel.org,
fw@...len.de, dborkman@...hat.com
Subject: Re: [net-next PATCH 3/3] net: frag queue per hash bucket locking
On Thu, Mar 28, 2013 at 03:03:59PM -0400, David Miller wrote:
> From: Hannes Frederic Sowa <hannes@...essinduktion.org>
> Date: Thu, 28 Mar 2013 19:57:21 +0100
>
> > On Wed, Mar 27, 2013 at 10:25:59AM -0700, Eric Dumazet wrote:
> >> On Wed, 2013-03-27 at 16:56 +0100, Jesper Dangaard Brouer wrote:
> >> > This patch implements per hash bucket locking for the frag queue
> >> > hash. This removes two write locks, and the only remaining write
> >> > lock is for protecting hash rebuild. This essentially reduce the
> >> > readers-writer lock to a rebuild lock.
> ...
> >> I am not sure why you added _bh suffix to spin_lock()/spin_unlock()
> >> here ?
> >
> > I assume that it has to do with the usage of this code in
> > ipv6/netfilter/nf_conntrack_reasm.c, which could be invoked from process
> > context, if I read it correctly.
>
> That appears to be the case yes.
>
> That's an odd environment for these routines to be invoked from,
> so longer term we should probably make the nf conntrack code do
> the BH disabling around the inet frag calls, rather than make the
> inet frag code eat the extra overhead for the more common invocations.
My idea was a bh-safe flag in struct inet_frags and conditionally use
spin_lock and spin_unlock_bh (these could be wrapped in inline functions just
for inet_fragment.c).
--
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