History

switchdev: change BUG_ON to WARN for attr set failure case

This particular BUG_ON condition was checking for attr set err in the COMMIT phase, which isn't expected (it's a driver bug if PREPARE phase is OK but COMMIT fails). But BUG_ON() is too strong for this case, so change to WARN(). BUG_ON() would be warranted if the system was corrupted beyond repair, but this is not the case here.

Scott Feldman committed 11 years ago

Commit e9fdaec1 parent 06baa3d1 file · +2 −1Browse files

Showing the changes to net/switchdev/switchdev.c (1 of 1 file). Show all

Unified · Split

net/switchdev/switchdev.c+2−1
@@ -184,7 +184,8 @@ int switchdev_port_attr_set(struct net_device *dev, struct switchdev_attr *attr) · 183 unmodified lines
184 184
185 attr->trans = SWITCHDEV_TRANS_COMMIT;185 attr->trans = SWITCHDEV_TRANS_COMMIT;
186 err = __switchdev_port_attr_set(dev, attr);186 err = __switchdev_port_attr_set(dev, attr);
187 BUG_ON(err);187 WARN(err, "%s: Commit of attribute (id=%d) failed.\n",
188 dev->name, attr->id);
188 189
189 return err;190 return err;
190}191}