mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-24 02:01:36 +03:00
nvethernet: use vlan priority to select queue
Adding support to use VLAN priority field to select correct TX queue. For TX packets which are for VLAN interface, skb->priority is not used. Bug 200630202 Change-Id: I4755066ead11e7528a18ee99b1eaba2b7a936d6d Signed-off-by: rakesh goyal <rgoyal@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2366244 Reviewed-by: automaticguardword <automaticguardword@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Nagarjuna Kristam <nkristam@nvidia.com> Reviewed-by: Mahesh Patil <maheshp@nvidia.com> Reviewed-by: Narayan Reddy <narayanr@nvidia.com> Reviewed-by: Srinivas Ramachandran <srinivasra@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> GVS: Gerrit_Virtual_Submit
This commit is contained in:
committed by
Revanth Kumar Uppala
parent
a7a0aea104
commit
b5d381e7ec
@@ -2125,10 +2125,16 @@ static unsigned short ether_select_queue(struct net_device *dev,
|
||||
struct osi_core_priv_data *osi_core = pdata->osi_core;
|
||||
unsigned short txqueue_select = 0;
|
||||
unsigned int i, mtlq;
|
||||
u16 vlan_tci;
|
||||
unsigned int priority = skb->priority;
|
||||
|
||||
if (vlan_get_tag(skb, &vlan_tci) == 0) {
|
||||
priority = (vlan_tci & VLAN_PRIO_MASK) >> VLAN_PRIO_SHIFT;
|
||||
}
|
||||
|
||||
for (i = 0; i < osi_core->num_mtl_queues; i++) {
|
||||
mtlq = osi_core->mtl_queues[i];
|
||||
if (pdata->txq_prio[mtlq] == skb->priority) {
|
||||
if (pdata->txq_prio[mtlq] == priority) {
|
||||
txqueue_select = (unsigned short)i;
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user