From owner-freebsd-questions@freebsd.org Sun Oct 6 19:34:39 2019 Return-Path: Delivered-To: freebsd-questions@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7E86213204A for ; Sun, 6 Oct 2019 19:34:39 +0000 (UTC) (envelope-from freebsd-database@pp.dyndns.biz) Received: from keymaster.local (ns1.xn--wesstrm-f1a.se [IPv6:2a00:d880:5:1b9::8526]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "keymaster.pp.dyndns.biz", Issuer "keymaster.pp.dyndns.biz" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 46mYhs62ljz3FrM for ; Sun, 6 Oct 2019 19:34:37 +0000 (UTC) (envelope-from freebsd-database@pp.dyndns.biz) Received: from [192.168.69.69] ([192.168.69.69]) by keymaster.local (8.15.2/8.15.2) with ESMTP id x96JYQ0C059167 for ; Sun, 6 Oct 2019 21:34:28 +0200 (CEST) (envelope-from freebsd-database@pp.dyndns.biz) To: FreeBSD Questions From: =?UTF-8?Q?Morgan_Wesstr=c3=b6m?= Subject: Intermittent connectivity loss with em(4) Message-ID: Date: Sun, 6 Oct 2019 21:34:22 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.1.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 46mYhs62ljz3FrM X-Spamd-Bar: ++++ Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of freebsd-database@pp.dyndns.biz has no SPF policy when checking 2a00:d880:5:1b9::8526) smtp.mailfrom=freebsd-database@pp.dyndns.biz X-Spamd-Result: default: False [4.01 / 15.00]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-questions@freebsd.org]; HFILTER_HELO_IP_A(1.00)[keymaster.local]; AUTH_NA(1.00)[]; RCPT_COUNT_ONE(0.00)[1]; NEURAL_SPAM_MEDIUM(0.94)[0.938,0]; RCVD_TLS_LAST(0.00)[]; TO_DN_ALL(0.00)[]; NEURAL_SPAM_LONG(0.98)[0.979,0]; HFILTER_HELO_NORES_A_OR_MX(0.30)[keymaster.local]; R_SPF_NA(0.00)[]; DMARC_NA(0.00)[pp.dyndns.biz]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:198203, ipnet:2a00:d880::/32, country:NL]; MID_RHS_MATCH_FROM(0.00)[]; IP_SCORE(-0.11)[asn: 198203(-0.57), country: NL(0.02)]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Oct 2019 19:34:39 -0000 I'd appreciate some help with the following problem because I'm probably blind to the obvious from all my trouble shooting. I have a small Supermicro Atom-based ITX-board with 3x Intel 82574L NICs (2 on mainboard, 1 in PCIe slot) and I experience intermittent network connectivity loss every few minutes. The machine is currently running FreeBSD 12.0-RELEASE-p10. I loop a single ping once per minute to dns.google (8.8.8.8) and output looks like this: 20:16:35 1 packets transmitted, 1 packets received, 0.0% packet loss 20:17:35 1 packets transmitted, 1 packets received, 0.0% packet loss 20:18:35 1 packets transmitted, 1 packets received, 0.0% packet loss 20:19:35 1 packets transmitted, 1 packets received, 0.0% packet loss 20:20:35 1 packets transmitted, 0 packets received, 100.0% packet loss 20:21:47 1 packets transmitted, 0 packets received, 100.0% packet loss 20:22:58 1 packets transmitted, 0 packets received, 100.0% packet loss 20:24:09 1 packets transmitted, 0 packets received, 100.0% packet loss 20:25:20 1 packets transmitted, 1 packets received, 0.0% packet loss 20:26:20 1 packets transmitted, 1 packets received, 0.0% packet loss 20:27:20 1 packets transmitted, 1 packets received, 0.0% packet loss 20:28:20 1 packets transmitted, 1 packets received, 0.0% packet loss 20:29:20 1 packets transmitted, 1 packets received, 0.0% packet loss 20:30:21 1 packets transmitted, 0 packets received, 100.0% packet loss 20:31:32 1 packets transmitted, 0 packets received, 100.0% packet loss 20:32:43 1 packets transmitted, 0 packets received, 100.0% packet loss 20:33:54 1 packets transmitted, 0 packets received, 100.0% packet loss 20:35:05 1 packets transmitted, 0 packets received, 100.0% packet loss 20:36:16 1 packets transmitted, 1 packets received, 0.0% packet loss 20:37:16 1 packets transmitted, 1 packets received, 0.0% packet loss 20:38:17 1 packets transmitted, 1 packets received, 0.0% packet loss 20:39:17 1 packets transmitted, 1 packets received, 0.0% packet loss 20:40:17 1 packets transmitted, 1 packets received, 0.0% packet loss 20:41:17 1 packets transmitted, 0 packets received, 100.0% packet loss THINGS I'VE TESTED WITHOUT RESOLVING THE PROBLEM - Tried all three NICs in the computer but they all show the same behaviour. - Tried a different ping target. - Tried the LiveCD environment from the older FreeBSD 11.3-RELEASE memstick. - Disabled MSI-X interrupts. - Additionally disabled MSI interrupts. - Recompiled em(4) and enabled DEBUG_INIT, DEBUG_IOCTL and DEBUG_HW but this only generates a few more message in dmesg during boot. There is nothing shown in dmesg or otherwise when connectivity is lost. THING'S I'VE TRIED THAT SEEMINGLY RESOLVES OR ALLEVIATES THE PROBLEM - Booting the system on Linux (4.19 kernel) with just a simple command prompt and running the same ping test does _NOT_ show any connectivity loss. At least not during the hour or so I tested. To me this rules out any hardware related problems as well as the network connection itself. - Generating small amounts of network traffic on the interface (like an ssh session) seems to reduce the problem. I can then run the ping test for maybe 30 minutes without loss of connectivity in FreeBSD but eventually it fails too. I really need help to understand what's going on here. I have a gut feeling some power saving is playing a trick on me but hw.em.smart_pwr_down is set to 0 default and I have no indication of any power saving function kicking in. How can I debug what's going on in em(4)? Am I just stupid and missing something obvious here? Kind regards Morgan Wesström