Hi, Is there a way to get detailed em(4) device errors without having to recompile kernel with EM_DEBUG ? I try to find in-errors reason(s) but netstat only gives errors as a sum of dropped_pkts + stats.rxerrc + stats.crcerrs + sc->stats.algnerrc +... as far as I can see :-( Manuel
Hi,
I'm having a similar problem. On one 4x em(4) machine, I get a lot of
input errors and, much more serious, intermittend packet loss, but only
on one interface out of two with similar traffic levels (~1-4kpps per
direction).
After reading the latest em(4) threads, I also found this very strange
thing, which must have been automatically configured:
# ifconfig em3
em3:
flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:30:48:94:0b:21
priority: 0
media: Ethernet autoselect (1000baseT full-duplex,master)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
status: active
I'm unsure about how to remove this feature from this (physical)
interface, and the machine uses none of carp, pfsync or sasync.
The hardware for this interface is
em3 at pci5 dev 0 function 0 "Intel PRO/1000MT (82573L)" rev 0x00: apic 2 int 17 (irq 11), address 00:30:48:94:0b:21
as detected by OpenBSD 4.8-stable (i386).
The ability to selectively enable or disable debugging for individual
devices at runtime would be a great feature, from a sysadmin's
perspective.
--
Kind regards,
--Toni++
If you wonder about the "master" in the media line then be assured that all is fine. 1000BaseT require autoselection to always run and every link
Hi,
thanks for your input. No, the interface is configured in a very
straightforward way without any bells and whistles. It has a four IPv4
addresses, plus one auto-generated IPv6 address (link layer local).
I don't use briding and didn't enable multicast in /etc/sysctl.conf,
either.
There are also no processes specifically using this interface (ie, no
tcpdump or similar). This is the whole process list:
$ ps ax
PID TT STAT TIME COMMAND
1 ?? Is 0:00.01 /sbin/init
2399 ?? Is 0:00.00 ntpd: [priv] (ntpd)
19341 ?? I 0:00.09 ntpd: ntp engine (ntpd)
12690 ?? I 0:00.01 ntpd: dns engine (ntpd)
11247 ?? Is 0:00.02 /usr/sbin/sshd -u0
2024 ?? Is 0:00.31 cron
32158 ?? Ss 0:01.19 sendmail: accepting connections (sendmail)
24559 ?? Ss 0:17.55 bgpd: parent (bgpd)
12368 ?? S 0:15.77 bgpd: session engine (bgpd)
18994 ?? S 1:05.98 bgpd: route decision engine (bgpd)
8611 ?? Ss 0:02.39 ifstated -v
11105 ?? S 0:05.28 syslogd -n -a /var/www/dev/log -a /var/empty/dev/log
27237 ?? Is 0:00.03 syslogd: [priv] (syslogd)
27968 ?? S 0:00.51 pflogd: [running] -s 256 -i pflog0 -f /var/log/pflog (pflogd)
13936 ?? Is 0:00.05 pflogd: [priv] (pflogd)
31560 ?? Ss 0:00.39 sshd: user@ttyp0 (sshd)
29917 ?? Ss 0:00.44 sshd: user@ttyp1 (sshd)
29148 p0 Ss+ 0:00.03 bash
16540 p1 Ss 0:00.04 bash
28953 p1 R+/1 0:00.00 ps -ax
17757 C0- S 0:00.53 runsvdir -P /var/service log: ...........................................................................
9629 C0 Is+ 0:00.00 /usr/libexec/getty std.9600 ttyC0
397 C1 Is+ 0:00.00 /usr/libexec/getty std.9600 ttyC1
25085 C2 Is+ 0:00.00 /usr/libexec/getty std.9600 ttyC2
32349 C3 Is+ 0:00.00 /usr/libexec/getty std.9600 ttyC3
12522 C5 Is+ 0:00.00 /usr/libexec/getty std.9600 ttyC5
$
None of these suggests to me that ALLMULTI or PROMISC should be on,
and ifconfig's man page doesn't suggest that I ...carp will do this too (and it seems it doesn't clear the PROMISC,ALLMULTI even when the carp interface is destroyed).
