nvethernet: fix use of "in_use" flag

Issue: When osd_transmit_complete() call
       ether_get_free_tx_ts_node() to get next
       free index, it returns always 0 as
       in_use flag was not set for already used
       node.

Fix: Set in_use flag to maintain list of nodes
     and avoid overwrite.

Bug 200762771

Change-Id: I8acd3f3495476c9e5d7ecf60494b62106948ca50
Signed-off-by: Rakesh Goyal <rgoyal@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2581550
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com>
Reviewed-by: Bhadram Varka <vbhadram@nvidia.com>
Reviewed-by: Mohan Thadikamalla <mohant@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@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:
Rakesh Goyal
2021-08-23 19:59:57 +05:30
committed by Revanth Kumar Uppala
parent 9cb082dc22
commit 6af51eded8

View File

@@ -755,6 +755,7 @@ static void osd_transmit_complete(void *priv, void *buffer, unsigned long dmaadd
return;
}
pdata->tx_ts_skb[idx].in_use = OSI_ENABLE;
pnode = &pdata->tx_ts_skb[idx];
pnode->skb = skb;
pnode->pktid = txdone_pkt_cx->pktid;