OSDN Git Service

switchdev: reduce transaction phase enum down to a boolean
authorJiri Pirko <jiri@mellanox.com>
Thu, 24 Sep 2015 08:02:49 +0000 (10:02 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 25 Sep 2015 05:59:22 +0000 (22:59 -0700)
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>
include/net/switchdev.h
net/switchdev/switchdev.c

index 9cf372f..1820787 100644 (file)
 
 #define SWITCHDEV_F_NO_RECURSE         BIT(0)
 
-enum switchdev_trans_ph {
-       SWITCHDEV_TRANS_PREPARE,
-       SWITCHDEV_TRANS_COMMIT,
-};
-
 struct switchdev_trans_item {
        struct list_head list;
        void *data;
@@ -30,17 +25,17 @@ struct switchdev_trans_item {
 
 struct switchdev_trans {
        struct list_head item_list;
-       enum switchdev_trans_ph ph;
+       bool ph_prepare;
 };
 
 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)
 {
-       return trans && trans->ph == SWITCHDEV_TRANS_COMMIT;
+       return trans && !trans->ph_prepare;
 }
 
 enum switchdev_attr_id {
index 1adeeda..00ee547 100644 (file)
@@ -240,7 +240,7 @@ int switchdev_port_attr_set(struct net_device *dev, struct switchdev_attr *attr)
         * but should not commit the attr.
         */
 
-       trans.ph = SWITCHDEV_TRANS_PREPARE;
+       trans.ph_prepare = true;
        err = __switchdev_port_attr_set(dev, attr, &trans);
        if (err) {
                /* 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.
         */
 
-       trans.ph = SWITCHDEV_TRANS_COMMIT;
+       trans.ph_prepare = false;
        err = __switchdev_port_attr_set(dev, attr, &trans);
        WARN(err, "%s: Commit of attribute (id=%d) failed.\n",
             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.
         */
 
-       trans.ph = SWITCHDEV_TRANS_PREPARE;
+       trans.ph_prepare = true;
        err = __switchdev_port_obj_add(dev, obj, &trans);
        if (err) {
                /* 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.
         */
 
-       trans.ph = SWITCHDEV_TRANS_COMMIT;
+       trans.ph_prepare = false;
        err = __switchdev_port_obj_add(dev, obj, &trans);
        WARN(err, "%s: Commit of object (id=%d) failed.\n", dev->name, obj->id);
        switchdev_trans_items_warn_destroy(dev, &trans);