[Bug 211062] [ixv] sr-iov virtual function driver fails to attach
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=211062 xygzen changed: What|Removed |Added CC||j...@iamplugged.in --- Comment #15 from xygzen --- If it helps any - I was getting the exact same issue at one cloud provider. When I enabled SR-IOV in the BIOS it had a cryptic message about needing to enable ASPM (Active State Power Management) for the SR-IOV to work properly. Nothing I did allowed it to work. When I switched providers, there was an ASPM setting in the BIOS of the new machine that wasn't there previously - and these were both Supermicro boards so it looks like not all motherboards support this functionality or maybe there is a newer version of the BIOS that has the setting correctly enabled. I still needed to enable hw.pci.honor_msi_blacklist=0 in /boot/loader.conf and used the latest IX and IXV drivers from Intel: IX - v3.3.25 - https://www.intel.com/content/www/us/en/download/14303/intel-network-adapters-driver-for-pcie-10-gigabit-network-connections-under-freebsd.html IXV -v.1.5.28 - https://www.intel.com/content/www/us/en/download/645984/intel-network-adapter-virtual-function-driver-for-pcie-10-gigabit-network-connections-under-freebsd.html Once I ran iovctl -C -f /etc/iovctl.conf the VF driver correctly attached to ixv0 (no passthrough) and the pci devices were configured correctly for the ixv1-3 for passthrough without drivers attached. Setting iovctl_files="/etc/iovctl.conf" in rc.conf and changing the ip to be configured on ixv0 instead of ix0 got this up and running automatically on reboot. If you're looking for a good cloud host with support for this I can highly recommend https://www.zare.com Hope that helps! -- You are receiving this mail because: You are the assignee for the bug.
[Bug 232451] [igb] I210 NIC can not send more than ~670Mbit/s with flow control enabled.
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=232451 Kevin Bowling changed: What|Removed |Added Resolution|--- |FIXED Status|New |Closed --- Comment #6 from Kevin Bowling --- Thanks Lev! I can confirm the driver is in a similar state in stable/13 and main, and this version will ship in 12.3 so I will close this bug out. I am not sure on the specific fix, a lot of things have been improved since the initial report. -- You are receiving this mail because: You are the assignee for the bug.
[Bug 232451] [igb] I210 NIC can not send more than ~670Mbit/s with flow control enabled.
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=232451 --- Comment #5 from Lev A. Serebryakov --- Looks like latest stable12 doesn't have this problem. -- You are receiving this mail because: You are the assignee for the bug.
NULL pointer crash in iflib_rxd_pkt_get with vmxnet3
This happened on FreeBSD 12.2 running as an ESXi guest with vmxnet3 network interface. Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x0 fault code = supervisor read data, page not present instruction pointer = 0x20:0x809d4bad stack pointer = 0x28:0xfe00c85cba40 frame pointer = 0x28:0xfe00c85cba40 code segment= base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags= interrupt enabled, resume, IOPL = 0 current process = 0 (if_io_tqg_0) trap number = 12 panic: page fault (kgdb) bt #0 __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:55 #1 doadump (textdump=-933448896) at /usr/src/sys/kern/kern_shutdown.c:447 #2 0x8038f1cc in db_fncall_generic (addr=, nargs=0, args=, rv=) at /usr/src/sys/ddb/db_command.c:622 #3 db_fncall (dummy1=, dummy2=, dummy3=out>, dummy4=) at /usr/src/sys/ddb/db_command.c:670 #4 0x8038eaf6 in db_command (last_cmdp=, cmd_table=, dopager=0) at /usr/src/sys/ddb/db_command.c:494 #5 0x80393a68 in db_script_exec (scriptname=, warnifnotfound=) at /usr/src/sys/ddb/db_script.c:304 #6 0x80393892 in db_script_kdbenter (eventname=) at /usr/src/sys/ddb/db_script.c:326 #7 0x80391ac3 in db_trap (type=, code=) at /usr/src/sys/ddb/db_main.c:251 #8 0x807821e2 in kdb_trap (type=3, code=0, tf=0xfe00c85cb630) at /usr/src/sys/kern/subr_kdb.c:700 #9 0x809d870e in trap (frame=0xfe00c85cb630) at /usr/src/sys/amd64/amd64/trap.c:583 #10 #11 kdb_enter (why=0x80b17af9 "panic", msg=0x80b17af9 "panic") at /usr/src/sys/kern/subr_kdb.c:486 #12 0x8073ddce in vpanic (fmt=, ap=) at /usr/src/sys/kern/kern_shutdown.c:975 #13 0x8073dc23 in panic (fmt=0x81178120 "") at /usr/src/sys/kern/kern_shutdown.c:909 #14 0x809d8b31 in trap_fatal (frame=0xfe00c85cb980, eva=0) at /usr/src/sys/amd64/amd64/trap.c:921 #15 0x809d8b8f in trap_pfault (frame=0xfe00c85cb980, usermode=, signo=, ucode=) at /usr/src/sys/amd64/amd64/trap.c:739 #16 0x809d8256 in trap (frame=0xfe00c85cb980) at /usr/src/sys/amd64/amd64/trap.c:405 #17 #18 memcpy_erms () at /usr/src/sys/amd64/amd64/support.S:577 #19 0x8084d049 in iflib_rxd_pkt_get (rxq=0xfe00ea9f5000, ri=) at /usr/src/sys/net/iflib.c:2737 #20 iflib_rxeof (rxq=, budget=) at /usr/src/sys/net/iflib.c:2879 #21 _task_fn_rx (context=) at /usr/src/sys/net/iflib.c:3868 #22 0x807808bd in gtaskqueue_run_locked (queue=0xf800020c7200) at /usr/src/sys/kern/subr_gtaskqueue.c:362 #23 0x8078068e in gtaskqueue_thread_loop (arg=) at /usr/src/sys/kern/subr_gtaskqueue.c:537 #24 0x8070792d in fork_exit (callout=0x80780610 , arg=0xfe7f8008, frame=0xfe00c85cbc00) at /usr/src/sys/kern/kern_fork.c:1088 #25 (kgdb) fr 19 #19 0x8084d049 in iflib_rxd_pkt_get (rxq=0xfe00ea9f5000, ri=) at /usr/src/sys/net/iflib.c:2737 2737/usr/src/sys/net/iflib.c: No such file or directory. (kgdb) i loc sd = {ifsd_cl = 0xf80002d61a38, ifsd_m = 0xf80002d62a38, ifsd_fl = 0xf80002d93400} m = 0xf80123211c00 (kgdb) p m->m_data $1 = (caddr_t) 0xf80123211c58 "" (kgdb) p sd.ifsd_cl $2 = (caddr_t *) 0xf80002d61a38 (kgdb) p *sd.ifsd_cl $3 = (caddr_t) 0x0 Is this a known issue? Is there a chance that this has already been fixed? Thank you. -- Andriy Gapon
Re: Iterating all VNETs from userspace application
I'll have a look On Mon, Oct 18, 2021 at 11:07 AM Özkan KIRIK wrote: > > Thank you Bjoern, I'll have al > > On Mon, Oct 18, 2021 at 10:49 AM Bjoern A. Zeeb > wrote: > > > > On 18 Oct 2021, at 4:46, Özkan KIRIK wrote: > > > > > Hi, > > > > > > I'm trying to gather all even within jails/vnet interface stats which > > > interface type ifmd_data.ifi_type == IFT_ETHER (6) for bsnmpd. Related > > > function (not modified) is here: > > > > > > https://github.com/freebsd/freebsd-src/blob/main/contrib/bsnmp/snmp_mibII/mibII.c#L926-L985 > > > > > > It's possible to add a filter interface type adding a line below line > > > 961: > > > if (mib.ifmd_data.ifi_type != IFT_ETHER) return; > > > > > > I'm looking for a way to iterate VNET instances, but net/vnet.h is > > > only for kernel space. > > > VNET_LIST_RLOCK_NOSLEEP(); > > > VNET_FOREACH(vnet_iter) { > > > CURVNET_SET(vnet_iter); > > > mib_refresh_iflist(); > > > CURVNET_RESTORE(); > > > } > > > VNET_LIST_RUNLOCK_NOSLEEP(); > > > The code above not working in userspace. > > > > > > Also I wonder that if it's possible to switch between jails. The > > > pseudo code I want to write: > > > > > > JAIL_FOREACH(jail_iter) { > > > jail_attach(jail_iter); > > > mib_refresh_iflist(); > > > jail_detach(); > > > } > > > > > > What is the right way to gather all interface stats ? > > > > Have a look at libkvm; I seem to remember adding vnet support. > > > > /bz > >
Re: Iterating all VNETs from userspace application
Thank you Bjoern, I'll have al On Mon, Oct 18, 2021 at 10:49 AM Bjoern A. Zeeb wrote: > > On 18 Oct 2021, at 4:46, Özkan KIRIK wrote: > > > Hi, > > > > I'm trying to gather all even within jails/vnet interface stats which > > interface type ifmd_data.ifi_type == IFT_ETHER (6) for bsnmpd. Related > > function (not modified) is here: > > > > https://github.com/freebsd/freebsd-src/blob/main/contrib/bsnmp/snmp_mibII/mibII.c#L926-L985 > > > > It's possible to add a filter interface type adding a line below line > > 961: > > if (mib.ifmd_data.ifi_type != IFT_ETHER) return; > > > > I'm looking for a way to iterate VNET instances, but net/vnet.h is > > only for kernel space. > > VNET_LIST_RLOCK_NOSLEEP(); > > VNET_FOREACH(vnet_iter) { > > CURVNET_SET(vnet_iter); > > mib_refresh_iflist(); > > CURVNET_RESTORE(); > > } > > VNET_LIST_RUNLOCK_NOSLEEP(); > > The code above not working in userspace. > > > > Also I wonder that if it's possible to switch between jails. The > > pseudo code I want to write: > > > > JAIL_FOREACH(jail_iter) { > > jail_attach(jail_iter); > > mib_refresh_iflist(); > > jail_detach(); > > } > > > > What is the right way to gather all interface stats ? > > Have a look at libkvm; I seem to remember adding vnet support. > > /bz >
Re: Iterating all VNETs from userspace application
On 18 Oct 2021, at 4:46, Özkan KIRIK wrote: Hi, I'm trying to gather all even within jails/vnet interface stats which interface type ifmd_data.ifi_type == IFT_ETHER (6) for bsnmpd. Related function (not modified) is here: https://github.com/freebsd/freebsd-src/blob/main/contrib/bsnmp/snmp_mibII/mibII.c#L926-L985 It's possible to add a filter interface type adding a line below line 961: if (mib.ifmd_data.ifi_type != IFT_ETHER) return; I'm looking for a way to iterate VNET instances, but net/vnet.h is only for kernel space. VNET_LIST_RLOCK_NOSLEEP(); VNET_FOREACH(vnet_iter) { CURVNET_SET(vnet_iter); mib_refresh_iflist(); CURVNET_RESTORE(); } VNET_LIST_RUNLOCK_NOSLEEP(); The code above not working in userspace. Also I wonder that if it's possible to switch between jails. The pseudo code I want to write: JAIL_FOREACH(jail_iter) { jail_attach(jail_iter); mib_refresh_iflist(); jail_detach(); } What is the right way to gather all interface stats ? Have a look at libkvm; I seem to remember adding vnet support. /bz