The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=a14d561e58529c9686a2efc47f4828ad82026e63
commit a14d561e58529c9686a2efc47f4828ad82026e63 Author: Joyu Liao <jo...@juniper.net> AuthorDate: 2025-09-04 20:00:27 +0000 Commit: Zhenlei Huang <z...@freebsd.org> CommitDate: 2025-09-04 20:00:27 +0000 vtnet: Do "hardware" accounting for the total number of received octets While here, advertise the IFCAP_HWSTATS capability to avoid the net stack from double counting it. Co-authored-by: zlei Reviewed by: zlei MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D44816 --- sys/dev/virtio/network/if_vtnet.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c index 4f19af6281a3..ec4282e0741a 100644 --- a/sys/dev/virtio/network/if_vtnet.c +++ b/sys/dev/virtio/network/if_vtnet.c @@ -1178,6 +1178,7 @@ vtnet_setup_interface(struct vtnet_softc *sc) if (sc->vtnet_max_mtu >= ETHERMTU_JUMBO) if_setcapabilitiesbit(ifp, IFCAP_JUMBO_MTU, 0); if_setcapabilitiesbit(ifp, IFCAP_VLAN_MTU, 0); + if_setcapabilitiesbit(ifp, IFCAP_HWSTATS, 0); /* * Capabilities after here are not enabled by default. @@ -3036,6 +3037,8 @@ vtnet_get_counter(if_t ifp, ift_counter cnt) return (rxaccum.vrxs_iqdrops); case IFCOUNTER_IERRORS: return (rxaccum.vrxs_ierrors); + case IFCOUNTER_IBYTES: + return (rxaccum.vrxs_ibytes); case IFCOUNTER_OPACKETS: return (txaccum.vtxs_opackets); case IFCOUNTER_OBYTES: