Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 796ec776 authored by Petr Machata's avatar Petr Machata Committed by David S. Miller
Browse files

mlxsw: spectrum: Rename IPIP-related netdevice handlers



To distinguish between events related to tunnel device itself and its
bound device, rename a number of functions related to handling tunneling
netdevice events to include _ol_ (for "overlay") in the name. That
leaves room in the namespace for underlay-related functions, which would
have _ul_ in the name.

Signed-off-by: default avatarPetr Machata <petrm@mellanox.com>
Reviewed-by: default avatarIdo Schimmel <idosch@mellanox.com>
Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 6ee79b6e
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -4542,8 +4542,9 @@ static int mlxsw_sp_netdevice_event(struct notifier_block *nb,
	int err = 0;

	mlxsw_sp = container_of(nb, struct mlxsw_sp, netdevice_nb);
	if (mlxsw_sp_netdev_is_ipip(mlxsw_sp, dev))
		err = mlxsw_sp_netdevice_ipip_event(mlxsw_sp, dev, event, ptr);
	if (mlxsw_sp_netdev_is_ipip_ol(mlxsw_sp, dev))
		err = mlxsw_sp_netdevice_ipip_ol_event(mlxsw_sp, dev,
						       event, ptr);
	else if (event == NETDEV_CHANGEADDR || event == NETDEV_CHANGEMTU)
		err = mlxsw_sp_netdevice_router_port_event(dev);
	else if (mlxsw_sp_is_vrf_event(event, ptr))
+6 −6
Original line number Diff line number Diff line
@@ -396,10 +396,10 @@ int mlxsw_sp_inet6addr_valid_event(struct notifier_block *unused,
				   unsigned long event, void *ptr);
int mlxsw_sp_netdevice_vrf_event(struct net_device *l3_dev, unsigned long event,
				 struct netdev_notifier_changeupper_info *info);
bool mlxsw_sp_netdev_is_ipip(const struct mlxsw_sp *mlxsw_sp,
bool mlxsw_sp_netdev_is_ipip_ol(const struct mlxsw_sp *mlxsw_sp,
				const struct net_device *dev);
int
mlxsw_sp_netdevice_ipip_event(struct mlxsw_sp *mlxsw_sp,
mlxsw_sp_netdevice_ipip_ol_event(struct mlxsw_sp *mlxsw_sp,
				 struct net_device *l3_dev,
				 unsigned long event,
				 struct netdev_notifier_changeupper_info *info);
+23 −22
Original line number Diff line number Diff line
@@ -1306,7 +1306,7 @@ static bool mlxsw_sp_netdev_ipip_type(const struct mlxsw_sp *mlxsw_sp,
	return false;
}

bool mlxsw_sp_netdev_is_ipip(const struct mlxsw_sp *mlxsw_sp,
bool mlxsw_sp_netdev_is_ipip_ol(const struct mlxsw_sp *mlxsw_sp,
				const struct net_device *dev)
{
	return mlxsw_sp_netdev_ipip_type(mlxsw_sp, dev, NULL);
@@ -1326,7 +1326,7 @@ mlxsw_sp_ipip_entry_find_by_ol_dev(struct mlxsw_sp *mlxsw_sp,
	return NULL;
}

static int mlxsw_sp_netdevice_ipip_reg_event(struct mlxsw_sp *mlxsw_sp,
static int mlxsw_sp_netdevice_ipip_ol_reg_event(struct mlxsw_sp *mlxsw_sp,
						struct net_device *ol_dev)
{
	struct mlxsw_sp_router *router = mlxsw_sp->router;
@@ -1347,7 +1347,7 @@ static int mlxsw_sp_netdevice_ipip_reg_event(struct mlxsw_sp *mlxsw_sp,
	return 0;
}

static void mlxsw_sp_netdevice_ipip_unreg_event(struct mlxsw_sp *mlxsw_sp,
static void mlxsw_sp_netdevice_ipip_ol_unreg_event(struct mlxsw_sp *mlxsw_sp,
						   struct net_device *ol_dev)
{
	struct mlxsw_sp_ipip_entry *ipip_entry;
@@ -1357,7 +1357,7 @@ static void mlxsw_sp_netdevice_ipip_unreg_event(struct mlxsw_sp *mlxsw_sp,
		mlxsw_sp_ipip_entry_destroy(mlxsw_sp, ipip_entry);
}

static int mlxsw_sp_netdevice_ipip_up_event(struct mlxsw_sp *mlxsw_sp,
static int mlxsw_sp_netdevice_ipip_ol_up_event(struct mlxsw_sp *mlxsw_sp,
					       struct net_device *ol_dev)
{
	struct mlxsw_sp_fib_entry *decap_fib_entry;
@@ -1375,7 +1375,7 @@ static int mlxsw_sp_netdevice_ipip_up_event(struct mlxsw_sp *mlxsw_sp,
	return 0;
}

static void mlxsw_sp_netdevice_ipip_down_event(struct mlxsw_sp *mlxsw_sp,
static void mlxsw_sp_netdevice_ipip_ol_down_event(struct mlxsw_sp *mlxsw_sp,
						  struct net_device *ol_dev)
{
	struct mlxsw_sp_ipip_entry *ipip_entry;
@@ -1385,7 +1385,7 @@ static void mlxsw_sp_netdevice_ipip_down_event(struct mlxsw_sp *mlxsw_sp,
		mlxsw_sp_ipip_entry_demote_decap(mlxsw_sp, ipip_entry);
}

static int mlxsw_sp_netdevice_ipip_vrf_event(struct mlxsw_sp *mlxsw_sp,
static int mlxsw_sp_netdevice_ipip_ol_vrf_event(struct mlxsw_sp *mlxsw_sp,
						struct net_device *ol_dev)
{
	struct mlxsw_sp_fib_entry *decap_fib_entry;
@@ -1424,25 +1424,26 @@ static int mlxsw_sp_netdevice_ipip_vrf_event(struct mlxsw_sp *mlxsw_sp,
	return 0;
}

int mlxsw_sp_netdevice_ipip_event(struct mlxsw_sp *mlxsw_sp,
int
mlxsw_sp_netdevice_ipip_ol_event(struct mlxsw_sp *mlxsw_sp,
				 struct net_device *ol_dev,
				 unsigned long event,
				 struct netdev_notifier_changeupper_info *info)
{
	switch (event) {
	case NETDEV_REGISTER:
		return mlxsw_sp_netdevice_ipip_reg_event(mlxsw_sp, ol_dev);
		return mlxsw_sp_netdevice_ipip_ol_reg_event(mlxsw_sp, ol_dev);
	case NETDEV_UNREGISTER:
		mlxsw_sp_netdevice_ipip_unreg_event(mlxsw_sp, ol_dev);
		mlxsw_sp_netdevice_ipip_ol_unreg_event(mlxsw_sp, ol_dev);
		return 0;
	case NETDEV_UP:
		return mlxsw_sp_netdevice_ipip_up_event(mlxsw_sp, ol_dev);
		return mlxsw_sp_netdevice_ipip_ol_up_event(mlxsw_sp, ol_dev);
	case NETDEV_DOWN:
		mlxsw_sp_netdevice_ipip_down_event(mlxsw_sp, ol_dev);
		mlxsw_sp_netdevice_ipip_ol_down_event(mlxsw_sp, ol_dev);
		return 0;
	case NETDEV_CHANGEUPPER:
		if (netif_is_l3_master(info->upper_dev))
			return mlxsw_sp_netdevice_ipip_vrf_event(mlxsw_sp,
			return mlxsw_sp_netdevice_ipip_ol_vrf_event(mlxsw_sp,
								    ol_dev);
		return 0;
	}