From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-oo1-f100.google.com (mail-oo1-f100.google.com [209.85.161.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C7B493939DB for ; Mon, 6 Apr 2026 17:58:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.161.100 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775498289; cv=none; b=pBn41m7L+WMxEOCGm4zn4O20cpHVxTvKOpArV75QSN40PtT0M6MNGlphMmtL+OXNZp+0qt5XYy+TVS1spU+ym4A1HUYNWq2m/2xyilb1qzko65sJc8VmnAwes6QBQX1zCuyZ075t+L+NzDDTtfrvmL5/PVAQhJKR++hgvgOY8Bw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775498289; c=relaxed/simple; bh=4ugauiSRyJh37zTQRKwBJf0kvw61L5ghO3MEoispJcU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=i6BEHR51YlpqjpGXvBy2WjDJQ1v5PAi9gNrxRwkX8uSdZ8WimnXVgPk4ovnfYpjxJX9kPkAGdBepVjbGE/QHHHtTRiB0dBLctEOjxY1XZFd+/5q+ZJr0760RVeA+AevdxmKGC8RuQebN7Yfq2ISQzW6LklqQpZLYPeYvQLNVOIg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=DZ2cipGi; arc=none smtp.client-ip=209.85.161.100 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="DZ2cipGi" Received: by mail-oo1-f100.google.com with SMTP id 006d021491bc7-68470763896so970452eaf.1 for ; Mon, 06 Apr 2026 10:58:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775498287; x=1776103087; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=oyJk+m7wBwZO7qo36ZVZoykMqbejewXxGbs+QICjCOA=; b=V8yTsrR6m7eV4rHuSbS8LytO1tGP/b3LVfUYZqZIb3IP7gGFdQAV7VHdcEkI6LpPSW oNW1dn8JrSelerzOKzMk2FoMU4HOuobpFLE/sBhrTuhJZDWHbaeD0SOi78WUtd/XkLjp ib9IAsQT5LJDa1BcbyrsrBTRlaj8IOm/tAgBx4WMjrcKL8sE6DklJ4cC6ksofpfGb0wR YomyKBYdF13O12iZMUwPbhnO8RNrcs17bwkcnO+iSCNKpC9Q0DbydimLkiptOyzhTFuE tHjt0w55Z7oRu4Nmu5GdmwNyo62/3kbbkcACspcibAmEPhbtjvo38EQ5AY6aDd5a2gie fT6Q== X-Gm-Message-State: AOJu0YwvUx8tdV5cW92/LE6+zl/pxQ8B+AfkigoEcqKnkdFy9C8UTEmG hKJboHJG4pDk3XVrGWUXr5Nph9vATgqiqVefwobgsemTHy89v+jz8ACT8bJPvXhCtlNiDIu/eb9 VDm3/3yKw6gFyWclSEuU2Hho9wnREItGJp7pcnUpRMnTt/R0EOfXZ9zCitbVoTSDHnOXKS5fjPB w4mAgnrGuWtOQVQUo5x6vfalbIp3Xmyfg4OkY6/2LzcVJUNBz6+OSgoXrBtI5skQYe7VWaP9mYk xyYNV+AYQ== X-Gm-Gg: AeBDies02B7G6bzeZFXzYPqkC96RvIjrhaGdro6Yk82EfpZrXfj2/XmQ/927VL2IUgJ DwfcDHeW+dVw4JCaNmySjAHUAipUdQUIiwJA89LNxLg0vXEzQoVY9qg/oTkqPugHvwYApZAKb8y Udr2kWt7Uy3A1EK5JC2S8DDxpPqzy64RJpPA0Cb71XmhErhzq//nipVBI2O7LtwxyM6kUwE7+ZR aJ8JBGML+7e/G0KX0qa5awsHIUX95weMLMChwW2CZFjGduIcysLeZWNBs/6SruoNTCoD2YcNzbo SvcNmkZJ9ZpMpIySOlpR4CIHOkRmLIlvrRJ659CN0A8Kde4NhsHc+XI0nZLZIwxr5xLnCn9XR07 vSPrhGOrK3NQMsW8lkPkb+mr7SO9u2hztESkg5Yu2s8mnhrZihl9qO1xp3xmbQW9CMLVZTkDQE4 7xIonFl8gHOJPvElGhIGKo2zlygpfmbZftYBuw6ibsZINfmGN0BqNM0lk= X-Received: by 2002:a05:6820:81c4:b0:67e:2dcd:e847 with SMTP id 006d021491bc7-68220941f51mr7229887eaf.61.1775498286626; Mon, 06 Apr 2026 10:58:06 -0700 (PDT) Received: from smtp-us-east1-p01-i01-si01.dlp.protect.broadcom.com (address-144-49-247-15.dlp.protect.broadcom.com. [144.49.247.15]) by smtp-relay.gmail.com with ESMTPS id 006d021491bc7-681e1718b6fsm564014eaf.26.2026.04.06.10.58.06 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 06 Apr 2026 10:58:06 -0700 (PDT) X-Relaying-Domain: broadcom.com X-CFilter-Loop: Reflected Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-50d984c74a8so22388851cf.1 for ; Mon, 06 Apr 2026 10:58:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1775498285; x=1776103085; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=oyJk+m7wBwZO7qo36ZVZoykMqbejewXxGbs+QICjCOA=; b=DZ2cipGizkbPm4V70ITlXpUH/QYjXRi3R6kk6AjtNArqAfY3Yb5Xlz4bCT7x61koWg ZVnHA59NfH6EtaviB78NW8qYqxkyvbswAGrNcdQoPEX2MhN7cLEGkfKP2OhOPDvR9afi 5lbH7tmNYSnaSQbHkoTouqcAoBhWIBV9YCs2k= X-Received: by 2002:a05:622a:7b0d:b0:50b:4001:ae12 with SMTP id d75a77b69052e-50d62ade51emr161115271cf.46.1775498284936; Mon, 06 Apr 2026 10:58:04 -0700 (PDT) X-Received: by 2002:a05:622a:7b0d:b0:50b:4001:ae12 with SMTP id d75a77b69052e-50d62ade51emr161114731cf.46.1775498284251; Mon, 06 Apr 2026 10:58:04 -0700 (PDT) Received: from stbsdo-bld-1.sdg.broadcom.net ([192.19.161.248]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8a596915986sm141462266d6.24.2026.04.06.10.58.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Apr 2026 10:58:03 -0700 (PDT) From: Justin Chen To: netdev@vger.kernel.org Cc: pabeni@redhat.com, kuba@kernel.org, edumazet@google.com, davem@davemloft.net, andrew+netdev@lunn.ch, bcm-kernel-feedback-list@broadcom.com, florian.fainelli@broadcom.com, opendmb@gmail.com, nb@tipi-net.de, Justin Chen Subject: [PATCH net v3 2/3] net: bcmgenet: fix leaking free_bds Date: Mon, 6 Apr 2026 10:57:55 -0700 Message-Id: <20260406175756.134567-3-justin.chen@broadcom.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260406175756.134567-1-justin.chen@broadcom.com> References: <20260406175756.134567-1-justin.chen@broadcom.com> Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-DetectorID-Processed: b00c1d49-9d2e-4205-b15f-d015386d3d5e While reclaiming the tx queue we fast forward the write pointer to drop any data in flight. These dropped frames are not added back to the pool of free bds. We also need to tell the netdev that we are dropping said data. Fixes: f1bacae8b655 ("net: bcmgenet: support reclaiming unsent Tx packets") Signed-off-by: Justin Chen Reviewed-by: Florian Fainelli Reviewed-by: Nicolai Buchwitz Tested-by: Nicolai Buchwitz --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c index 0f6e4baba25b..e89126a0c20e 100644 --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c @@ -1985,6 +1985,7 @@ static unsigned int bcmgenet_tx_reclaim(struct net_device *dev, drop = (ring->prod_index - ring->c_index) & DMA_C_INDEX_MASK; released += drop; ring->prod_index = ring->c_index & DMA_C_INDEX_MASK; + ring->free_bds += drop; while (drop--) { cb_ptr = bcmgenet_put_txcb(priv, ring); skb = cb_ptr->skb; @@ -1996,6 +1997,7 @@ static unsigned int bcmgenet_tx_reclaim(struct net_device *dev, } if (skb) dev_consume_skb_any(skb); + netdev_tx_reset_queue(netdev_get_tx_queue(dev, ring->index)); bcmgenet_tdma_ring_writel(priv, ring->index, ring->prod_index, TDMA_PROD_INDEX); wr_ptr = ring->write_ptr * WORDS_PER_BD(priv); -- 2.34.1