From: Jiri Pirko <j...@mellanox.com> RTNL mutex needs to be held for this function. Safe usage of netdev_for_each_lower_dev requires that.
Signed-off-by: Jiri Pirko <j...@mellanox.com> --- net/switchdev/switchdev.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/net/switchdev/switchdev.c b/net/switchdev/switchdev.c index 6e4a4f9..3fb05d5 100644 --- a/net/switchdev/switchdev.c +++ b/net/switchdev/switchdev.c @@ -359,6 +359,8 @@ EXPORT_SYMBOL_GPL(switchdev_port_obj_add); * @dev: port device * @id: object ID * @obj: object to delete + * + * rtnl_lock must be held. */ int switchdev_port_obj_del(struct net_device *dev, const struct switchdev_obj *obj) @@ -368,6 +370,8 @@ int switchdev_port_obj_del(struct net_device *dev, struct list_head *iter; int err = -EOPNOTSUPP; + ASSERT_RTNL(); + if (ops && ops->switchdev_port_obj_del) return ops->switchdev_port_obj_del(dev, obj); -- 1.9.3 -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html