Commit 46737a19 authored by Danielle Ratson's avatar Danielle Ratson Committed by David S. Miller
Browse files

devlink: Move switch_port attribute of devlink_port_attrs to devlink_port



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: default avatarDanielle Ratson <danieller@mellanox.com>
Reviewed-by: default avatarJiri Pirko <jiri@mellanox.com>
Signed-off-by: default avatarIdo Schimmel <idosch@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 10a429ba
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -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;
};

+3 −3
Original line number Diff line number Diff line
@@ -7521,13 +7521,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;
}
@@ -9461,7 +9461,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));