Incorrect credits in iflib_tx_credits_update() in sys/net/iflib.c
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 29 Jun 2021 21:19:16 UTC
Hi, I noticed that that function assumes ctx->isc_txd_credits_update() returns at most twice of txq->ift_size (the number of ring buffers) - 1, but I noticed em_isc_txd_credits_update() can return a much larger value. As a result, too large txq->ift_cidx_processed is set and thus iflib_netmap_txsync sets incorrect nr_hwtail. I am not sure this should be fixed in the driver or iflib - could someone take a look at this? Cheers, - Michio