Thread (53 messages) 53 messages, 9 authors, 2015-04-02

RE: [PATCH net-next 02/18] switchdev: flesh out get/set attr ops

From: Arad, Ronen <hidden>
Date: 2015-03-31 00:23:02

-----Original Message-----
From: netdev-owner@vger.kernel.org [mailto:netdev-owner@vger.kernel.org] On
Behalf Of sfeldma@gmail.com
Sent: Monday, March 30, 2015 1:40 AM
To: netdev@vger.kernel.org
Cc: jiri@resnulli.us; roopa@cumulusnetworks.com; linux@roeck-us.net;
f.fainelli@gmail.com
Subject: [PATCH net-next 02/18] switchdev: flesh out get/set attr ops

From: Scott Feldman <redacted>
[cut]
int swdev_port_attr_set(struct net_device *dev, struct swdev_attr *attr)
{
-	return -EOPNOTSUPP;
+	struct swdev_attr prev = *attr;
+	int err, get_err;
+
+	get_err = swdev_port_attr_get(dev, &prev);
+
+	err = _swdev_port_attr_set(dev, attr);
+	if (err && !get_err && !(attr->flags & SWDEV_ATTR_F_NO_RECOVER))
+		/* Some err on set: revert to previous value */
+		_swdev_port_attr_set(dev, &prev);
Netlink requests could contain multiple attributes within a single request.
Reverting to the previous value applies only to the first
swdev_port_attr_set error. It does not rollback all prior changes that
were triggered by the same Netlink request.
+
+	return err;
}
EXPORT_SYMBOL_GPL(swdev_port_attr_set);

--
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help