Date: Tue, 29 Jun 2021 22:19:16 +0100 From: Michio Honda <micchie.gml@gmail.com> To: freebsd-hackers@freebsd.org Subject: Incorrect credits in iflib_tx_credits_update() in sys/net/iflib.c Message-ID: <CA%2BSc9E2r4vk8hHOtUJ8kh6XO_TgOxcM5DARkR3Qrm=FLu8Hpag@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
--0000000000002fcb0205c5ee2962 Content-Type: text/plain; charset="UTF-8" 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 --0000000000002fcb0205c5ee2962--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2BSc9E2r4vk8hHOtUJ8kh6XO_TgOxcM5DARkR3Qrm=FLu8Hpag>