Date: Fri, 21 Nov 2025 06:44:31 +0000 From: Kevin Bowling <kbowling@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: aa30bab9a92e - main - e1000: Bump 82574/82583 PBA to 32K Message-ID: <69200a4f.26e65.2d94d0c5@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=aa30bab9a92e1be230b9708bff9f33aae7d384e5 commit aa30bab9a92e1be230b9708bff9f33aae7d384e5 Author: Kevin Bowling <kbowling@FreeBSD.org> AuthorDate: 2025-11-21 05:02:00 +0000 Commit: Kevin Bowling <kbowling@FreeBSD.org> CommitDate: 2025-11-21 06:44:25 +0000 e1000: Bump 82574/82583 PBA to 32K The reporter contacted me with packet loss and throughput fluctuations on a low power machine (Intel J1900) that got worse with the recent AIM algorithm in FreeBSD 14.2+. 32K RX PBA matches Linux default. Add a conditional path since we don't otherwise do a fixup for jumbo frames to retain space for two frames in Tx. With this change and an additional errata change, the throughput meets line rate for the reporter. Reported by: Codin <codin@nagi.ftp.sh> Tested by: Codin <codin@nagi.ftp.sh> MFC after: 2 weeks --- sys/dev/e1000/if_em.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index b8ea3168330b..02f4c431badd 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -3080,9 +3080,13 @@ em_reset(if_ctx_t ctx) case e1000_82573: pba = E1000_PBA_12K; /* 12K for Rx, 20K for Tx */ break; + /* 82574/82583: Total Packet Buffer is 40K */ case e1000_82574: case e1000_82583: - pba = E1000_PBA_20K; /* 20K for Rx, 20K for Tx */ + if (hw->mac.max_frame_size > 8192) + pba = E1000_PBA_22K; /* 22K for Rx, 18K for Tx */ + else + pba = E1000_PBA_32K; /* 32K for RX, 8K for Tx */ break; case e1000_ich8lan: pba = E1000_PBA_8K;help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69200a4f.26e65.2d94d0c5>
