summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlx5/core/en.h
diff options
context:
space:
mode:
authorTariq Toukan2017-07-02 12:17:42 +0200
committerSaeed Mahameed2017-09-03 05:34:09 +0200
commita8c2eb15797a0f0bf17734d365da7bdc3e263155 (patch)
tree155add1ef705830009a464619d4965608f97d99d /drivers/net/ethernet/mellanox/mlx5/core/en.h
parentnet/mlx5e: Use kernel's mechanism to avoid missing NAPIs (diff)
downloadkernel-qcow2-linux-a8c2eb15797a0f0bf17734d365da7bdc3e263155.tar.gz
kernel-qcow2-linux-a8c2eb15797a0f0bf17734d365da7bdc3e263155.tar.xz
kernel-qcow2-linux-a8c2eb15797a0f0bf17734d365da7bdc3e263155.zip
net/mlx5e: Stop NAPI when irq balancer changes affinity
NAPI context keeps rescheduling on same CPU as long as it's busy. This doesn't give the oppurtunity for changes in irq affinities to take effect. Fix that by calling napi_complete_done() upon a change in affinity. This would stop the NAPI and reschedule it on the new CPU. Signed-off-by: Tariq Toukan <tariqt@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/en.h')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/en.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en.h b/drivers/net/ethernet/mellanox/mlx5/core/en.h
index 7c046ae8b18e..1388a1e2f835 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en.h
@@ -582,6 +582,9 @@ struct mlx5e_channel {
__be32 mkey_be;
u8 num_tc;
+ /* data path - accessed per napi poll */
+ struct irq_desc *irq_desc;
+
/* control */
struct mlx5e_priv *priv;
struct mlx5_core_dev *mdev;