]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commit
net/mlx5e: Remove wrong poll CQ optimization
authorTariq Toukan <tariqt@mellanox.com>
Mon, 29 Feb 2016 19:17:09 +0000 (21:17 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 2 Mar 2016 19:37:24 +0000 (14:37 -0500)
commit59a7c2fd336eaafb030aac9c91ac21d136a99f33
treee9cdbc46b92857dab6df3b698ae24260b7851769
parent607e681111800f9bbfcd823a385a45dd0295dfb8
net/mlx5e: Remove wrong poll CQ optimization

With the MLX5E_CQ_HAS_CQES optimization flag, the following buggy
flow might occur:
- Suppose RX is always busy, TX has a single packet every second.
- We poll a single TX cqe and clear its flag.
- We never arm it again as RX is always busy.
- TX CQ flag is never changed, and new TX cqes are not polled.

We revert this optimization.

Fixes: e586b3b0baee ('net/mlx5: Ethernet Datapath files')
Signed-off-by: Tariq Toukan <tariqt@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx5/core/en.h
drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
drivers/net/ethernet/mellanox/mlx5/core/en_tx.c
drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c