summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlx4
diff options
context:
space:
mode:
authorJohn Fastabend2016-02-17 06:16:43 +0100
committerDavid S. Miller2016-02-17 15:47:35 +0100
commit16e5cc647173a97e33b3e3ba81f73eb455561794 (patch)
tree038fd8d297fe13691d252d52e9d811ba2510d4cc /drivers/net/ethernet/mellanox/mlx4
parentnet: rework ndo tc op to consume additional qdisc handle parameter (diff)
downloadkernel-qcow2-linux-16e5cc647173a97e33b3e3ba81f73eb455561794.tar.gz
kernel-qcow2-linux-16e5cc647173a97e33b3e3ba81f73eb455561794.tar.xz
kernel-qcow2-linux-16e5cc647173a97e33b3e3ba81f73eb455561794.zip
net: rework setup_tc ndo op to consume general tc operand
This patch updates setup_tc so we can pass additional parameters into the ndo op in a generic way. To do this we provide structured union and type flag. This lets each classifier and qdisc provide its own set of attributes without having to add new ndo ops or grow the signature of the callback. Signed-off-by: John Fastabend <john.r.fastabend@intel.com> Acked-by: Jiri Pirko <jiri@mellanox.com> Acked-by: Jamal Hadi Salim <jhs@mojatatu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx4')
-rw-r--r--drivers/net/ethernet/mellanox/mlx4/en_netdev.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
index d5c6c16b9457..01d6a9695586 100644
--- a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
+++ b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
@@ -69,12 +69,13 @@ int mlx4_en_setup_tc(struct net_device *dev, u8 up)
return 0;
}
-static int __mlx4_en_setup_tc(struct net_device *dev, u32 handle, u8 up)
+static int __mlx4_en_setup_tc(struct net_device *dev, u32 handle, __be16 proto,
+ struct tc_to_netdev *tc)
{
- if (handle != TC_H_ROOT)
+ if (handle != TC_H_ROOT || tc->type != TC_SETUP_MQPRIO)
return -EINVAL;
- return mlx4_en_setup_tc(dev, up);
+ return mlx4_en_setup_tc(dev, tc->tc);
}
#ifdef CONFIG_RFS_ACCEL