forked from luck/tmp_suning_uos_patched
switchdev: fix BUG when port driver doesn't support set attr op
Fix a BUG_ON() where CONFIG_NET_SWITCHDEV is set but the driver for a bridged port does not support switchdev_port_attr_set op. Don't BUG_ON() if -EOPNOTSUPP is returned. Also change BUG_ON() to netdev_err since this is a normal error path and does not warrant the use of BUG_ON(), which is reserved for unrecoverable errs. Signed-off-by: Scott Feldman <sfeldma@gmail.com> Reported-by: Brenden Blanco <bblanco@plumgrid.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
d0504f4d8f
commit
57225e7720
|
@ -103,7 +103,9 @@ static void switchdev_port_attr_set_work(struct work_struct *work)
|
|||
|
||||
rtnl_lock();
|
||||
err = switchdev_port_attr_set(asw->dev, &asw->attr);
|
||||
BUG_ON(err);
|
||||
if (err && err != -EOPNOTSUPP)
|
||||
netdev_err(asw->dev, "failed (err=%d) to set attribute (id=%d)\n",
|
||||
err, asw->attr.id);
|
||||
rtnl_unlock();
|
||||
|
||||
dev_put(asw->dev);
|
||||
|
|
Loading…
Reference in New Issue
Block a user