Bug 250922 - no packet received by ix(4) card when system booted
Summary: no packet received by ix(4) card when system booted
Status: Closed Overcome By Events
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: 12.2-RELEASE
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-net (Nobody)
URL:
Keywords: IntelNetworking
Depends on:
Blocks:
 
Reported: 2020-11-07 13:02 UTC by Stéphane D'Alu
Modified: 2021-03-17 15:48 UTC (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stéphane D'Alu 2020-11-07 13:02:09 UTC
I upgraded from 12.1-RELEASE-p4 (no problem there) to 12.2-RELEASE.
In 12.2-RELEASE the ix(4) driver associated to the card (Ethernet Connection X552/X557-AT 10GBASE-T) doesn't receive packet (tcpdump show nothing).

The card has been configured by /etc/rc.conf during boot time, it is marked UP and RUNNING, and all the IP addresses have been associated.

Making and "ifconfig down" followed by "ifconfig up" seems to resolve the problem most of the time
Comment 1 Piotr Pietruszewski 2020-11-09 17:28:07 UTC
Do you mind sharing your ix configuration from /etc/rc.conf?
Comment 2 Stéphane D'Alu 2020-11-09 18:47:43 UTC
Below the fragment corresponding to the network configuration:
~~~
cloned_interfaces="tun0 lo1"

ifconfig_ix0_name="net0"
ifconfig_tun0_name="vpn0"

ifconfig_net0="inet xxx.xxx.xxx.xxx/24"
ifconfig_net0_alias0="inet yyy.yyy.yyy.yyy/32"
defaultrouter="149.202.71.254"
ifconfig_net0_ipv6="inet6 wwww:wwww:wwww:wwww::1/64 accept_rtadv no_radr"
ipv6_network_interfaces="net0"
ipv6_default_interface="net0"
ipv6_defaultrouter="wwww:wwww:wwww:wwff:ff:ff:ff:ff"
ipv6_route_ovhgw="wwww:wwww:wwww:wwff:ff:ff:ff:ff/128 -interface net0"

ifconfig_lo1="inet zzz.zzz.zzz.zzz/24 group jail"

ifconfig_vpn0="group vpn fib 1"
route_vpn0_jails="  -net  zzz.zzz.zzz.zzz/24 -iface lo1  -fib 1"
route_vpn0_myself0="-host xxx.xxx.xxx.xxx    -iface lo0  -fib 1"
route_vpn0_myself1="-host yyy.yyy.yyy.yyy   -iface lo0  -fib 1"

ipv6_static_routes="ovhgw"
static_routes="vpn0_jails vpn0_myself0 vpn0_myself1"

tcp_extensions="YES"

pf_enable="YES"
pflog_enable="YES"
~~~

I also tried without enabling the firewall, same result
Comment 3 Piotr Pietruszewski 2020-11-18 08:35:05 UTC
Are you seeing any warnings in dmesg? Does the problem occur with the out-of-tree version of the ix driver (https://downloadcenter.intel.com/download/14688/Intel-Network-Adapters-Driver-for-PCIe-10-Gigabit-Network-Connections-Under-FreeBSD-?product=36773)?
Comment 4 Stéphane D'Alu 2020-11-18 09:33:47 UTC
No warning in dmesg.

I just try 3.3.18 from the intel site (I followed your link), it is not building:

Warning: Object directory not changed from original /root/ix-3.3.18/src
cc  -O2 -pipe  -DSMP -DINET -DINET6 -DIXGBE_STANDALONE_BUILD -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc   -I. -I/usr/src/sys -I/usr/src/sys/contrib/ck/include -fno-common  -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fdebug-prefix-map=./machine=/usr/src/sys/amd64/include -fdebug-prefix-map=./x86=/usr/src/sys/x86/include   -MD  -MF.depend.if_ix.o -MTif_ix.o -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float  -fno-asynchronous-unwind-tables -ffreestanding -fwrapv -fstack-protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wcast-qual -Wundef -Wno-pointer-sign -D__printf__=__freebsd_kprintf__ -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parentheses-equality -Wno-error-unused-function -Wno-error-pointer-sign -Wno-error-shift-negative-value -Wno-address-of-packed-member  -mno-aes -mno-avx  -std=iso9899:1999 -c if_ix.c -o if_ix.o
In file included from if_ix.c:42:
In file included from ./ixgbe.h:93:
./freebsd_compat_common.h:142:15: error: redefinition of typedef
      'iflladdr_cb_t' is a C11 feature [-Werror,-Wtypedef-redefinition]
typedef u_int iflladdr_cb_t(void *, struct sockaddr_dl *, u_int);
              ^
/usr/src/sys/net/if_var.h:742:15: note: previous definition is here
typedef u_int iflladdr_cb_t(void *, struct sockaddr_dl *, u_int);
              ^
1 error generated.
*** Error code 1
Comment 5 Stéphane D'Alu 2021-03-17 15:48:13 UTC
Problem is not reproduced in 13.0-rc2