The struct devlink_port_attrs holds the attributes of devlink_port.

Similarly to the previous patch, 'switch_port' attribute is another
exception.

Move 'switch_port' to be devlink_port's field.

Signed-off-by: Danielle Ratson <daniel...@mellanox.com>
Reviewed-by: Jiri Pirko <j...@mellanox.com>
---
 include/net/devlink.h | 6 +++---
 net/core/devlink.c    | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/include/net/devlink.h b/include/net/devlink.h
index 3e4efd51d5c5..4d840997690a 100644
--- a/include/net/devlink.h
+++ b/include/net/devlink.h
@@ -65,8 +65,7 @@ struct devlink_port_pci_vf_attrs {
 };
 
 struct devlink_port_attrs {
-       u8 split:1,
-          switch_port:1;
+       u8 split:1;
        enum devlink_port_flavour flavour;
        struct netdev_phys_item_id switch_id;
        union {
@@ -89,7 +88,8 @@ struct devlink_port {
        enum devlink_port_type desired_type;
        void *type_dev;
        struct devlink_port_attrs attrs;
-       u8 attrs_set:1;
+       u8 attrs_set:1,
+          switch_port:1;
        struct delayed_work type_warn_dw;
 };
 
diff --git a/net/core/devlink.c b/net/core/devlink.c
index e5e594d15d3e..c4507fd9fc11 100644
--- a/net/core/devlink.c
+++ b/net/core/devlink.c
@@ -7388,13 +7388,13 @@ static int __devlink_port_attrs_set(struct devlink_port 
*devlink_port,
        devlink_port->attrs_set = true;
        attrs->flavour = flavour;
        if (switch_id) {
-               attrs->switch_port = true;
+               devlink_port->switch_port = true;
                if (WARN_ON(switch_id_len > MAX_PHYS_ITEM_ID_LEN))
                        switch_id_len = MAX_PHYS_ITEM_ID_LEN;
                memcpy(attrs->switch_id.id, switch_id, switch_id_len);
                attrs->switch_id.id_len = switch_id_len;
        } else {
-               attrs->switch_port = false;
+               devlink_port->switch_port = false;
        }
        return 0;
 }
@@ -9328,7 +9328,7 @@ int devlink_compat_switch_id_get(struct net_device *dev,
         * any devlink lock as only permanent values are accessed.
         */
        devlink_port = netdev_to_devlink_port(dev);
-       if (!devlink_port || !devlink_port->attrs.switch_port)
+       if (!devlink_port || !devlink_port->switch_port)
                return -EOPNOTSUPP;
 
        memcpy(ppid, &devlink_port->attrs.switch_id, sizeof(*ppid));
-- 
2.20.1

Reply via email to