switchdev: reduce transaction phase enum down to a boolean
Now, since we have only 2 values for transaction phase, just use bool. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
79a62eb22a
commit
f623ab7f51
2 changed files with 7 additions and 12 deletions
|
@ -17,11 +17,6 @@
|
||||||
|
|
||||||
#define SWITCHDEV_F_NO_RECURSE BIT(0)
|
#define SWITCHDEV_F_NO_RECURSE BIT(0)
|
||||||
|
|
||||||
enum switchdev_trans_ph {
|
|
||||||
SWITCHDEV_TRANS_PREPARE,
|
|
||||||
SWITCHDEV_TRANS_COMMIT,
|
|
||||||
};
|
|
||||||
|
|
||||||
struct switchdev_trans_item {
|
struct switchdev_trans_item {
|
||||||
struct list_head list;
|
struct list_head list;
|
||||||
void *data;
|
void *data;
|
||||||
|
@ -30,17 +25,17 @@ struct switchdev_trans_item {
|
||||||
|
|
||||||
struct switchdev_trans {
|
struct switchdev_trans {
|
||||||
struct list_head item_list;
|
struct list_head item_list;
|
||||||
enum switchdev_trans_ph ph;
|
bool ph_prepare;
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline bool switchdev_trans_ph_prepare(struct switchdev_trans *trans)
|
static inline bool switchdev_trans_ph_prepare(struct switchdev_trans *trans)
|
||||||
{
|
{
|
||||||
return trans && trans->ph == SWITCHDEV_TRANS_PREPARE;
|
return trans && trans->ph_prepare;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline bool switchdev_trans_ph_commit(struct switchdev_trans *trans)
|
static inline bool switchdev_trans_ph_commit(struct switchdev_trans *trans)
|
||||||
{
|
{
|
||||||
return trans && trans->ph == SWITCHDEV_TRANS_COMMIT;
|
return trans && !trans->ph_prepare;
|
||||||
}
|
}
|
||||||
|
|
||||||
enum switchdev_attr_id {
|
enum switchdev_attr_id {
|
||||||
|
|
|
@ -240,7 +240,7 @@ int switchdev_port_attr_set(struct net_device *dev, struct switchdev_attr *attr)
|
||||||
* but should not commit the attr.
|
* but should not commit the attr.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
trans.ph = SWITCHDEV_TRANS_PREPARE;
|
trans.ph_prepare = true;
|
||||||
err = __switchdev_port_attr_set(dev, attr, &trans);
|
err = __switchdev_port_attr_set(dev, attr, &trans);
|
||||||
if (err) {
|
if (err) {
|
||||||
/* Prepare phase failed: abort the transaction. Any
|
/* Prepare phase failed: abort the transaction. Any
|
||||||
|
@ -259,7 +259,7 @@ int switchdev_port_attr_set(struct net_device *dev, struct switchdev_attr *attr)
|
||||||
* because the driver said everythings was OK in phase I.
|
* because the driver said everythings was OK in phase I.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
trans.ph = SWITCHDEV_TRANS_COMMIT;
|
trans.ph_prepare = false;
|
||||||
err = __switchdev_port_attr_set(dev, attr, &trans);
|
err = __switchdev_port_attr_set(dev, attr, &trans);
|
||||||
WARN(err, "%s: Commit of attribute (id=%d) failed.\n",
|
WARN(err, "%s: Commit of attribute (id=%d) failed.\n",
|
||||||
dev->name, attr->id);
|
dev->name, attr->id);
|
||||||
|
@ -323,7 +323,7 @@ int switchdev_port_obj_add(struct net_device *dev, struct switchdev_obj *obj)
|
||||||
* but should not commit the obj.
|
* but should not commit the obj.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
trans.ph = SWITCHDEV_TRANS_PREPARE;
|
trans.ph_prepare = true;
|
||||||
err = __switchdev_port_obj_add(dev, obj, &trans);
|
err = __switchdev_port_obj_add(dev, obj, &trans);
|
||||||
if (err) {
|
if (err) {
|
||||||
/* Prepare phase failed: abort the transaction. Any
|
/* Prepare phase failed: abort the transaction. Any
|
||||||
|
@ -342,7 +342,7 @@ int switchdev_port_obj_add(struct net_device *dev, struct switchdev_obj *obj)
|
||||||
* because the driver said everythings was OK in phase I.
|
* because the driver said everythings was OK in phase I.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
trans.ph = SWITCHDEV_TRANS_COMMIT;
|
trans.ph_prepare = false;
|
||||||
err = __switchdev_port_obj_add(dev, obj, &trans);
|
err = __switchdev_port_obj_add(dev, obj, &trans);
|
||||||
WARN(err, "%s: Commit of object (id=%d) failed.\n", dev->name, obj->id);
|
WARN(err, "%s: Commit of object (id=%d) failed.\n", dev->name, obj->id);
|
||||||
switchdev_trans_items_warn_destroy(dev, &trans);
|
switchdev_trans_items_warn_destroy(dev, &trans);
|
||||||
|
|
Loading…
Add table
Reference in a new issue