[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAF2d9jipwzVPNcaiQduPkDyoy3OXQG4UW=VB4HyVPjyrU2bU1w@mail.gmail.com>
Date: Tue, 7 Jul 2015 21:05:00 -0700
From: Mahesh Bandewar <maheshb@...gle.com>
To: Konstantin Khlebnikov <khlebnikov@...dex-team.ru>
Cc: linux-netdev <netdev@...r.kernel.org>,
"David S. Miller" <davem@...emloft.net>,
Jiri Benc <jbenc@...hat.com>
Subject: Re: [PATCH v2 4/5] ipvlan: protect addresses with internal spinlock
On Fri, Jul 3, 2015 at 5:58 AM, Konstantin Khlebnikov
<khlebnikov@...dex-team.ru> wrote:
> Inet6addr notifier is atomic and runs in bh context without RTNL when
> ipv6 receives router advertisement packet and performs autoconfiguration.
>
> This patch adds ipvl_port->addr_lock and helpers: ipvlan_addr_lock_bh,
> ipvlan_addr_unlock_bh for protecting ipvlan addresses and hash table.
>
Frankly I'm not comfortable adding spin-locks all over. I think any
config that mostly takes place with RTNL makes sense but this
inet6addr needs to be thought through and implanting spin-locks in
IPvlan is a work-around for a problem some where else.
Why can't a work-queue that takes RTNL to call inet6addr-notifier be
implemented when called from bh?
> Signed-off-by: Konstantin Khlebnikov <khlebnikov@...dex-team.ru>
> ---
> drivers/net/ipvlan/ipvlan.h | 11 +++++++++++
> drivers/net/ipvlan/ipvlan_core.c | 2 --
> drivers/net/ipvlan/ipvlan_main.c | 33 ++++++++++++++++++++++++++++++---
> 3 files changed, 41 insertions(+), 5 deletions(-)
>
[snip]
--
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