OSDN Git Service

devlink: Move set attribute of devlink_port_attrs to devlink_port
authorDanielle Ratson <danieller@mellanox.com>
Thu, 9 Jul 2020 13:18:14 +0000 (16:18 +0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Jul 2020 20:15:29 +0000 (13:15 -0700)
The struct devlink_port_attrs holds the attributes of devlink_port.

The 'set' field is not devlink_port's attribute as opposed to most of the
others.

Move 'set' to be devlink_port's field called 'attrs_set'.

Signed-off-by: Danielle Ratson <danieller@mellanox.com>
Reviewed-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/devlink.h
net/core/devlink.c

index 428f55f..28f8d92 100644 (file)
@@ -65,8 +65,7 @@ struct devlink_port_pci_vf_attrs {
 };
 
 struct devlink_port_attrs {
-       u8 set:1,
-          split:1,
+       u8 split:1,
           switch_port:1;
        enum devlink_port_flavour flavour;
        struct netdev_phys_item_id switch_id;
@@ -90,6 +89,7 @@ struct devlink_port {
        enum devlink_port_type desired_type;
        void *type_dev;
        struct devlink_port_attrs attrs;
+       u8 attrs_set:1;
        struct delayed_work type_warn_dw;
 };
 
index 6ae3680..f28ae63 100644 (file)
@@ -528,7 +528,7 @@ static int devlink_nl_port_attrs_put(struct sk_buff *msg,
 {
        struct devlink_port_attrs *attrs = &devlink_port->attrs;
 
-       if (!attrs->set)
+       if (!devlink_port->attrs_set)
                return 0;
        if (nla_put_u16(msg, DEVLINK_ATTR_PORT_FLAVOUR, attrs->flavour))
                return -EMSGSIZE;
@@ -7518,7 +7518,7 @@ static int __devlink_port_attrs_set(struct devlink_port *devlink_port,
 
        if (WARN_ON(devlink_port->registered))
                return -EEXIST;
-       attrs->set = true;
+       devlink_port->attrs_set = true;
        attrs->flavour = flavour;
        if (switch_id) {
                attrs->switch_port = true;
@@ -7626,7 +7626,7 @@ static int __devlink_port_phys_port_name_get(struct devlink_port *devlink_port,
        struct devlink_port_attrs *attrs = &devlink_port->attrs;
        int n = 0;
 
-       if (!attrs->set)
+       if (!devlink_port->attrs_set)
                return -EOPNOTSUPP;
 
        switch (attrs->flavour) {