[Bug 265857] qlnxe: no IPV6 pings between nodes on the same switch until an IPv4 address is set
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 16 Nov 2022 15:42:10 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=265857 --- Comment #22 from Zhenlei Huang <zlei.huang@gmail.com> --- (In reply to benoitc from comment #1) > looking at the source code: > https://cgit.freebsd.org/src/tree/sys/dev/qlnx/qlnxe/qlnx_os.c#n2675 > it seems that this snippet initialising the ha record : > ``` > ifp->if_flags |= IFF_UP; > if (!(ifp->if_drv_flags & IFF_DRV_RUNNING)) { > QLNX_LOCK(ha); > qlnx_init_locked(ha); > QLNX_UNLOCK(ha); > } > ``` > should also be added to > https://cgit.freebsd.org/src/tree/sys/dev/qlnx/qlnxe/qlnx_os.c#n2687 > otherwise I am not sure when this is correctly initialised using an IPv6 address. > Thoughts? Line https://cgit.freebsd.org/src/tree/sys/dev/qlnx/qlnxe/qlnx_os.c#n2687 calls ether_ioctl() which in turn calls `ifp->if_init(ifp->if_softc)`. For qlnx driver `ifp->if_init` is `qlnx_init()` which is a wrapper of `qlnx_init_locked()`. So when adding IPv6 addresses to the interface, it will be initialised (the same with IPv4). -- You are receiving this mail because: You are the assignee for the bug.