diff options
| author | David S. Miller <davem@davemloft.net> | 2016-07-14 13:34:30 -0700 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2016-07-14 13:34:30 -0700 |
| commit | 53d94892e27409bb2b48140207c0273b2ba65f61 (patch) | |
| tree | 8f0ab08a8153e692e203749a211578f2f3e5a7d8 /net/switchdev/switchdev.c | |
| parent | Merge branch 'nps_ent-coding-style' (diff) | |
| parent | net/mlx5e: Add TC offload support for the VF representors netdevice (diff) | |
| download | linux-53d94892e27409bb2b48140207c0273b2ba65f61.tar.gz linux-53d94892e27409bb2b48140207c0273b2ba65f61.zip | |
Merge branch 'mlx5-bulk-flow-stats-sriov-tc-offloads'
Saeed Mahameed says:
====================
Mellanox 100G mlx5 Bulk flow statistics and SRIOV TC offloads
This series from Amir and Or deals with two enhancements for the mlx5 TC offloads.
The 1st two patches add bulk reading of flow counters. Few bulk counter queries are
used instead of issuing thousands firmware commands per second to get statistics of all
flows set to HW.
The next patches add TC based SRIOV offloading to mlx5, as a follow up for the e-switch
offloads mode and the VF representors. When the e-switch is set to the (new) "offloads"
mode, we can now offload TC/flower drop and forward rules, the forward action we offload
is TC mirred/redirect.
The above is done by the VF representor netdevices exporting the setup_tc ndo where from
there we're re-using and enhancing the existing mlx5 TC offloads sub-module which now
works for both the NIC and the SRIOV cases.
The series is applied on top b38a75d2d324 ('mlxsw: core: Trace EMAD messages')
and it has no merge issues with the on-going net submission ('mlx5 tx timeout watchdog fixes')
V2:
- Fixed compilation warning.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/switchdev/switchdev.c')
| -rw-r--r-- | net/switchdev/switchdev.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/net/switchdev/switchdev.c b/net/switchdev/switchdev.c index 59658b2e9cdf..a5fc9dd24aa9 100644 --- a/net/switchdev/switchdev.c +++ b/net/switchdev/switchdev.c @@ -1286,8 +1286,8 @@ void switchdev_fib_ipv4_abort(struct fib_info *fi) } EXPORT_SYMBOL_GPL(switchdev_fib_ipv4_abort); -static bool switchdev_port_same_parent_id(struct net_device *a, - struct net_device *b) +bool switchdev_port_same_parent_id(struct net_device *a, + struct net_device *b) { struct switchdev_attr a_attr = { .orig_dev = a, @@ -1323,6 +1323,7 @@ static u32 switchdev_port_fwd_mark_get(struct net_device *dev, return dev->ifindex; } +EXPORT_SYMBOL_GPL(switchdev_port_same_parent_id); static void switchdev_port_fwd_mark_reset(struct net_device *group_dev, u32 old_mark, u32 *reset_mark) |
