Re: [Intel-wired-lan] [PATCH iwl-net v1] igc: Use 5KB TX packet buffer per queue for TSN mode

From: Paul Menzel
Date: Tue Dec 02 2025 - 12:35:30 EST


Dear Chwee-Lin,


Thank you for your patch.

(Just a heads-up, that Zdenek’s email address was not properly quoted in the Cc: list.)

In the summary you could be more specific to say, that you *decrease* the size.

Am 02.12.25 um 13:23 schrieb Chwee-Lin Choong:
Update IGC_TXPBSIZE_TSN to allocate 5KB per TX queue (TXQ0-TXQ3)
as recommended in I225/I226 SW User Manual Section 7.5.4 for TSN
operation.

Please elaborate on the problem (mention the 7 KB size and hangs), and maybe Faizal remembers why they chose 7 KB.

Also, are there any performance drawbacks. (I know that avoiding hangs tops that, but it would be good to know.)

Fixes: 0d58cdc902da ("igc: optimize TX packet buffer utilization for TSN mode")
Reported-by: Zdenek Bouska <zdenek.bouska@xxxxxxxxxxx>
Closes: https://lore.kernel.org/netdev/AS1PR10MB5675DBFE7CE5F2A9336ABFA4EBEAA@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/
Signed-off-by: Chwee-Lin Choong <chwee.lin.choong@xxxxxxxxx>
---
drivers/net/ethernet/intel/igc/igc_defines.h | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h b/drivers/net/ethernet/intel/igc/igc_defines.h
index 498ba1522ca4..9482ab11f050 100644
--- a/drivers/net/ethernet/intel/igc/igc_defines.h
+++ b/drivers/net/ethernet/intel/igc/igc_defines.h
@@ -443,9 +443,10 @@
#define IGC_TXPBSIZE_DEFAULT ( \
IGC_TXPB0SIZE(20) | IGC_TXPB1SIZE(0) | IGC_TXPB2SIZE(0) | \
IGC_TXPB3SIZE(0) | IGC_OS2BMCPBSIZE(4))
+/* TSN value following I225/I226 SW User Manual Section 7.5.4 */
#define IGC_TXPBSIZE_TSN ( \
- IGC_TXPB0SIZE(7) | IGC_TXPB1SIZE(7) | IGC_TXPB2SIZE(7) | \
- IGC_TXPB3SIZE(7) | IGC_OS2BMCPBSIZE(4))
+ IGC_TXPB0SIZE(5) | IGC_TXPB1SIZE(5) | IGC_TXPB2SIZE(5) | \
+ IGC_TXPB3SIZE(5) | IGC_OS2BMCPBSIZE(4))

Reading the commit message of commit 0d58cdc902da ("igc: optimize TX packet buffer utilization for TSN mode"), it says, that the goal is to split up 32 KB. What is happening to the 8 KB that are freed up now?

#define IGC_DTXMXPKTSZ_TSN 0x19 /* 1600 bytes of max TX DMA packet size */
#define IGC_DTXMXPKTSZ_DEFAULT 0x98 /* 9728-byte Jumbo frames */

With a more elaborate commit message, feel free to add:

Reviewed-by: Paul Menzel <pmenzel@xxxxxxxxxxxxx>


Kind regards,

Paul