[Bug 268490] [igb] [lagg] [vlan]: Intel i210 performance severely degraded
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 17 Mar 2023 18:05:39 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=268490 --- Comment #34 from Daniel Duerr <duerrd561@gmail.com> --- (In reply to Kevin Bowling from comment #33) Hi Kevin, Here's my first progress report: ### Round 1: Restart the `git bisect` and confirm the commit 68cfeeb1d3c4 works [root@nfs ~]# cd /usr/src [root@nfs ~]# git checkout releng/12.4 [root@nfs ~]# git bisect start release/12.4.0 release/12.2.0 -- sys/dev/e1000 Bisecting: a merge base must be tested [68cfeeb1d3c428e3c3881f45bc3a20a252b37d0e] MFC r365284: [root@nfs ~]# make -j `sysctl -n hw.ncpu` buildkernel KERNCONF=GENERIC-NODEBUG && make installkernel KERNCONF=GENERIC-NODEBUG [root@nfs ~]# reboot [root@nfs ~]# uname -a FreeBSD nfs.tidepool.cloud 12.2-PRERELEASE FreeBSD 12.2-PRERELEASE 68cfeeb1d3c4(HEAD) GENERIC-NODEBUG amd64 [root@nfs ~]# iperf -s ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 64.0 KByte (default) ------------------------------------------------------------ [ 1] local 172.27.6.135 port 5001 connected with 172.27.6.129 port 10616 [ ID] Interval Transfer Bandwidth [ 1] 0.00-10.00 sec 1.15 GBytes 985 Mbits/sec [ 2] local 172.27.6.135 port 5001 connected with 172.27.6.129 port 20446 [ ID] Interval Transfer Bandwidth [ 2] 0.00-10.00 sec 1.15 GBytes 988 Mbits/sec [ 3] local 172.27.6.135 port 5001 connected with 172.27.6.129 port 10068 [ ID] Interval Transfer Bandwidth [ 3] 0.00-10.00 sec 1.15 GBytes 985 Mbits/sec ### Round 2: Apply the change to sys/dev/e1000/if_em.c in commit 68cfeeb1d3c4 and see if it still works [root@nfs src]# vi sys/dev/e1000/if_em.c [root@nfs src]# git diff diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 558a75ac015e..42faacfc3eea 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -1338,7 +1338,7 @@ em_if_init(if_ctx_t ctx) } /* Don't lose promiscuous settings */ - em_if_set_promisc(ctx, IFF_PROMISC); + em_if_set_promisc(ctx, if_getflags(ifp)); e1000_clear_hw_cntrs_base_generic(&adapter->hw); /* MSI-X configuration for 82574 */ [root@nfs ~]# make -j `sysctl -n hw.ncpu` buildkernel KERNCONF=GENERIC-NODEBUG && make installkernel KERNCONF=GENERIC-NODEBUG [root@nfs ~]# reboot [root@nfs ~]# uname -a FreeBSD nfs.tidepool.cloud 12.2-PRERELEASE FreeBSD 12.2-PRERELEASE #15 68cfeeb1d3c4(HEAD)-dirty: Fri Mar 17 10:50:14 PDT 2023 toor@nfs.tidepool.cloud:/usr/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG amd64 [root@nfs ~]# iperf -s ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 64.0 KByte (default) ------------------------------------------------------------ [ 1] local 172.27.6.135 port 5001 connected with 172.27.6.129 port 47216 [ 2] local 172.27.6.135 port 5001 connected with 172.27.6.129 port 37030 [ 3] local 172.27.6.135 port 5001 connected with 172.27.6.129 port 41145 ^CWaiting for server threads to complete. Interrupt again to force quit. [ ID] Interval Transfer Bandwidth [ 1] 0.00-76.70 sec 60.0 Bytes 6.26 bits/sec [ 2] 0.00-56.38 sec 60.0 Bytes 8.51 bits/sec [ 3] 0.00-36.23 sec 60.0 Bytes 13.2 bits/sec [SUM] 0.00-78.70 sec 180 Bytes 18.3 bits/sec In summary, the first good commit in the bisect works and when I apply the change, it stops working. As a next step, I was thinking I'd (a) revert the manual change back to the "good" state, (b) so a `git bisect good` to proceed to the next (first "bad") commit, and (c) manually reverse the change the other way to see if the bad commit then works. Does that make sense? -- You are receiving this mail because: You are the assignee for the bug.