From nobody Mon Apr 20 08:26:56 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fzdrY1b7Xz6bJsh; Mon, 20 Apr 2026 08:27:09 +0000 (UTC) (envelope-from royger@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fzdrY13Hzz3KDf; Mon, 20 Apr 2026 08:27:09 +0000 (UTC) (envelope-from royger@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1776673629; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=PByU5n93/w+c9uCDXD/WAWU1IHlwWcFDe71sDUcuYco=; b=YnHBH9VF9O0gGeN2MypmHRLnT4sEkzRzLy4ppMShtRQ7V7WH1jB5FZGo/6u9NF3peaVyZs j8e6EnQrEipyAQNlk/wB1MQ5IG53L0w99gXwuPe7o1Alo3lSc7eQfSVdD4uiAftfiZQT7y UIepLnLFn0RuIuDWkomZiphMSqXx61t8prkVYOrc4szpS38P+dt1hyu9mtVblsC4bsPSO2 VsSkpHmCVYpU4HOIGHscKMpwbynlLeOHp5PcPQfWTX3kq/fRgnMr8bjgvFeZnfDHaPdd3T ZRGV8X+lk4Efo0FgahzTPriWRNsRf/COtoAss0kP0Eb+7IORz19PSojIQPyJKw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1776673629; a=rsa-sha256; cv=none; b=ZZU4XWw8meqzjT+TY3ZFvX1gg8Pa5wzglLGmsPFI67xYXL4Am8A2Y6LtO6bQgFIeDJUOGU A0fgFv1S5T3+QS3vou7/v5DBYzq6Z+DkEXNt6vv//dPj6mknMGuwHZF5J/j1bRmsdV5TVz GxaPmIJgBiKCtEpJahB8zQwu9xE4TrHXPbuA3xMMRl3Sl5ztq5+mJd0ctPWCJyLmZUAeQp xWyQFSMRzqFqU3XUig6WFzvom945KlYMCfjnVSCQLcoDCiOCQiosmx1vjchc0iwLGKcjl/ vJyFiTDjZuXn5dAYfg28mHtmjNcjx1rXsj79lS/TKJocmU8DKEyj2bvlyn0scA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1776673629; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=PByU5n93/w+c9uCDXD/WAWU1IHlwWcFDe71sDUcuYco=; b=Skd2tla+E9dURoxrDxRyMPBCDppzOsIxNF+vkB2OVcTbkmpwpOW0+n8BnM3M/uALsduD4U dp7je2Uid4dheyHCLrYNSkdMdD0MHMtPNVp7E+3Vaz4qW7ov1uGlnNNyWCvSxP2VSJH0MI upj+b7HmwJoQ2aJz2y6RUFbB7ZMb2Ah615eekGK73B8s2uCHZtjJ+cQ+aSZKxqFFuX0rCx qSgh+Xfw6KzFfeQ+l+SA2mN3MKn5ElsSgvpombI2CnlBKhghIsZYOjcUOHh5DTTMAOnYVJ lX7me66u5lnimHTUhPVDS1E2hmREdf6I0rRs7yMYqKpw9VDvxThtPsBymDuGaQ== Received: from localhost (112.pool92-178-7.dynamic.orange.es [92.178.7.112]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: royger) by smtp.freebsd.org (Postfix) with ESMTPSA id 4fzdrX4pkBz903; Mon, 20 Apr 2026 08:27:08 +0000 (UTC) (envelope-from royger@freebsd.org) Date: Mon, 20 Apr 2026 10:26:56 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Andrew Gallatin Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 3fade68cfdf9 - main - iflib: accurately count bytes/segments for TSO Message-ID: References: <69e26f4a.346e1.31c510c2@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <69e26f4a.346e1.31c510c2@gitrepo.freebsd.org> On Fri, Apr 17, 2026 at 05:35:06PM +0000, Andrew Gallatin wrote: > The branch main has been updated by gallatin: > > URL: https://cgit.FreeBSD.org/src/commit/?id=3fade68cfdf95ee0b517b5d69b270bd8da633404 > > commit 3fade68cfdf95ee0b517b5d69b270bd8da633404 > Author: Andrew Gallatin > AuthorDate: 2026-04-17 15:45:22 +0000 > Commit: Andrew Gallatin > CommitDate: 2026-04-17 17:34:27 +0000 > > iflib: accurately count bytes/segments for TSO > > When using software based ifnet counters, iflib has not factored > TSO into account when reporting the segments and bytes sent. > So it will underreport NIC bandwidth by a small percent, > and will undercount sent segments by a large factor. > Fix this by calculating the number of added segments the NIC > will send, and add header size multiplied by that number > to arrive at a correct accounting of segments and bytes sent. > This makes these software counters directly comparable to > hardware counters. > > Doing this requires moving the calculation into iflib_encap() where > we have already parsed the packet and know the header size, MSS, etc. Hello, This causes a reliable crash on my box when I attempt to ssh into it: panic: Assertion mp != NULL && *mp != NULL failed at /usr/src/sys/net/iflib.c:3922 cpuid = 11 time = 1776673321 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe0115bbf3e0 vpanic() at vpanic+0x136/frame 0xfffffe0115bbf510 panic() at panic+0x43/frame 0xfffffe0115bbf570 iflib_txq_drain() at iflib_txq_drain+0x429/frame 0xfffffe0115bbf5f0 drain_ring_lockless() at drain_ring_lockless+0x8a/frame 0xfffffe0115bbf640 ifmp_ring_enqueue() at ifmp_ring_enqueue+0x332/frame 0xfffffe0115bbf690 iflib_if_transmit() at iflib_if_transmit+0x273/frame 0xfffffe0115bbf710 bridge_enqueue() at bridge_enqueue+0x214/frame 0xfffffe0115bbf760 bridge_output() at bridge_output+0x10a/frame 0xfffffe0115bbf7b0 ether_output() at ether_output+0x689/frame 0xfffffe0115bbf840 ip_output() at ip_output+0x183d/frame 0xfffffe0115bbf960 tcp_default_output() at tcp_default_output+0x21d8/frame 0xfffffe0115bbfb30 tcp_usr_send() at tcp_usr_send+0x5d0/frame 0xfffffe0115bbfbe0 sosend_generic_locked() at sosend_generic_locked+0x59b/frame 0xfffffe0115bbfc90 sosend_generic() at sosend_generic+0x61/frame 0xfffffe0115bbfce0 sousrsend() at sousrsend+0x79/frame 0xfffffe0115bbfd40 dofilewrite() at dofilewrite+0x81/frame 0xfffffe0115bbfd90 sys_write() at sys_write+0x127/frame 0xfffffe0115bbfe00 amd64_syscall() at amd64_syscall+0x169/frame 0xfffffe0115bbff30 fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe0115bbff30 --- syscall (4, FreeBSD ELF64, write), rip = 0x297fd795023a, rsp = 0x297fccb77d98, rbp = 0x297fccb77dc0 --- KDB: enter: panic [ thread pid 3093 tid 100634 ] Stopped at kdb_enter+0x33: movq $0,0x15dd302(%rip) db> My network config is: ifconfig_igc0="DHCP" cloned_interfaces="bridge0" ifconfig_bridge0="addm igc0" Thanks, Roger.