summaryrefslogtreecommitdiffstats
path: root/include/linux/mlx4
diff options
context:
space:
mode:
authorAmir Vadai <amirv@mellanox.com>2012-04-04 21:33:24 +0000
committerDavid S. Miller <davem@davemloft.net>2012-04-05 05:08:03 -0400
commit0e98b523c4a4119cbd17e58dff385cc329064694 (patch)
tree4c16b13b5f118cfcf607195d1683ed01ba508b77 /include/linux/mlx4
parent73a0d907301ece200d32b4e8ba2da2ca296b507f (diff)
downloadlinux-stable-0e98b523c4a4119cbd17e58dff385cc329064694.tar.gz
linux-stable-0e98b523c4a4119cbd17e58dff385cc329064694.tar.bz2
linux-stable-0e98b523c4a4119cbd17e58dff385cc329064694.zip
net/mlx4_en: Force user priority by QP attribute
Instead of relying on HW to change schedule queue by UP, schedule queue is fixed for a tx_ring, and UP in WQE is ignored in this aspect. This resolves two issues with untagged traffic: 1. untagged traffic has no UP in packet which is needed for QoS. The change above allows setting the schedule queue (and by that the UP) of such a stream. 2. BlueFlame uses the same field used by vlan tag. So forcing UP from QPC allows using BF for untagged but prioritized traffic. In old firmware that force UP is not supported, untagged traffic will not subject to QoS. Because UP is set by QP, need to always have a tx ring per UP, even if pfcrx module paramter is false. Signed-off-by: Amir Vadai <amirv@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/mlx4')
-rw-r--r--include/linux/mlx4/qp.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/mlx4/qp.h b/include/linux/mlx4/qp.h
index 091f9e7dc8b9..96005d75893c 100644
--- a/include/linux/mlx4/qp.h
+++ b/include/linux/mlx4/qp.h
@@ -139,7 +139,8 @@ struct mlx4_qp_path {
u8 rgid[16];
u8 sched_queue;
u8 vlan_index;
- u8 reserved3[2];
+ u8 feup;
+ u8 reserved3;
u8 reserved4[2];
u8 dmac[6];
};