[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20181004.135620.905434760592364740.davem@davemloft.net>
Date: Thu, 04 Oct 2018 13:56:20 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: idosch@...lanox.com
Cc: netdev@...r.kernel.org, jiri@...lanox.com
Subject: Re: [PATCH net] team: Forbid enslaving team device to itself
From: Ido Schimmel <idosch@...lanox.com>
Date: Mon, 1 Oct 2018 12:21:59 +0300
> team's ndo_add_slave() acquires 'team->lock' and later tries to open the
> newly enslaved device via dev_open(). This emits a 'NETDEV_UP' event
> that causes the VLAN driver to add VLAN 0 on the team device. team's
> ndo_vlan_rx_add_vid() will also try to acquire 'team->lock' and
> deadlock.
>
> Fix this by checking early at the enslavement function that a team
> device is not being enslaved to itself.
>
> A similar check was added to the bond driver in commit 09a89c219baf
> ("bonding: disallow enslaving a bond to itself").
...
> Fixes: 87002b03baab ("net: introduce vlan_vid_[add/del] and use them instead of direct [add/kill]_vid ndo calls")
> Signed-off-by: Ido Schimmel <idosch@...lanox.com>
> Reported-and-tested-by: syzbot+bd051aba086537515cdb@...kaller.appspotmail.com
Applied and queued up for -stable.
Powered by blists - more mailing lists