[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250914133150.429b5f70@kernel.org>
Date: Sun, 14 Sep 2025 13:31:50 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Bhargava Marreddy <bhargava.marreddy@...adcom.com>
Cc: davem@...emloft.net, edumazet@...gle.com, pabeni@...hat.com,
andrew+netdev@...n.ch, horms@...nel.org, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, michael.chan@...adcom.com,
pavan.chebbi@...adcom.com, vsrama-krishna.nemani@...adcom.com,
vikas.gupta@...adcom.com, Rajashekar Hudumula
<rajashekar.hudumula@...adcom.com>
Subject: Re: [v7, net-next 06/10] bng_en: Allocate packet buffers
On Fri, 12 Sep 2025 01:05:01 +0530 Bhargava Marreddy wrote:
> +static void bnge_alloc_one_rx_pkt_mem(struct bnge_net *bn,
> + struct bnge_rx_ring_info *rxr,
> + int ring_nr)
> +{
> + u32 prod;
> + int i;
> +
> + prod = rxr->rx_prod;
> + for (i = 0; i < bn->rx_ring_size; i++) {
> + if (bnge_alloc_rx_data(bn, rxr, prod, GFP_KERNEL)) {
> + netdev_warn(bn->netdev, "init'ed rx ring %d with %d/%d skbs only\n",
> + ring_nr, i, bn->rx_ring_size);
> + break;
> + }
> + prod = NEXT_RX(prod);
> + }
> + rxr->rx_prod = prod;
You should have some sort of minimal fill level of the Rx rings.
Right now ndo_open will succeed even when Rx rings are completely empty.
Looks like you made even more functions void since v6, this is going in
the wrong direction. Most drivers actually expect the entire ring to be
filled. You can have a partial fill, but knowing bnxt I'm worried the
driver will actually never try to fill the rings back up.
--
pw-bot: cr
Powered by blists - more mailing lists