[3/4] net/netvsc: mark chim_index as NVS_CHIM_IDX_INVALID after freeing it
Checks
Commit Message
From: Long Li <longli@microsoft.com>
chim_index could potentially be used in other hn_txdesc when re-allocated.
Mark it as invalid to prevent stale value being used.
Signed-off-by: Long Li <longli@microsoft.com>
---
drivers/net/netvsc/hn_rxtx.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
Comments
On Mon, 10 Aug 2020 19:33:13 -0700
longli@linuxonhyperv.com wrote:
> From: Long Li <longli@microsoft.com>
>
> chim_index could potentially be used in other hn_txdesc when re-allocated.
> Mark it as invalid to prevent stale value being used.
>
> Signed-off-by: Long Li <longli@microsoft.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
@@ -419,8 +419,10 @@ hn_nvs_send_completed(struct rte_eth_dev *dev, uint16_t queue_id,
++txq->stats.errors;
}
- if (txd->chim_index != NVS_CHIM_IDX_INVALID)
+ if (txd->chim_index != NVS_CHIM_IDX_INVALID) {
hn_chim_free(hv, txd->chim_index);
+ txd->chim_index = NVS_CHIM_IDX_INVALID;
+ }
rte_pktmbuf_free(txd->m);
hn_txd_put(txq, txd);