[dpdk-users] [VMXNET3] vmxnet3_dev_stats_get() segfault when called by pktgen
longtb5 at viettel.com.vn
longtb5 at viettel.com.vn
Thu Sep 7 11:15:56 CEST 2017
Apparently the problem was that I started CLI _with_ timers. When I directly called cli_start(); instead of
cli_start_with_timers() in pktgen_cli_start() every works OK (except it threw another segfault after quit, but
that's not important right now).
I have check and see that HPET is enabled, but is not the current clk source. Maybe that's the problem.
----- Original Message -----
From: longtb5 at viettel.com.vn
To: users at dpdk.org
Cc: "keith wiles" <keith.wiles at intel.com>, skhare at vmware.com
Sent: Thursday, September 7, 2017 2:42:06 PM
Subject: Re: [VMXNET3] vmxnet3_dev_stats_get() segfault when called by pktgen
I have tested another app (proc_info) which also uses vmxnet3_dev_stats_get() but it ran just fine.
I have found out that this function, which is called inside vmxnet3_dev_stats_get(), causes the kernel to return a SIGSEGV when running pktgen:
vmxnet3_hw_tx_stats_get(hw, i, &txStats);
Should be related to how pktgen called this function? Because the other app didn't crash.
> ----- Original Message -----
> From: longtb5 at viettel.com.vn
> To: users at dpdk.org
> Sent: Thursday, September 7, 2017 7:51:46 AM
> Subject: [VMXNET3] vmxnet3_dev_stats_get() segfault when called by pktgen
> I'm running Ubuntu 16.04 on my VM with vmxnet3 as the NIC. I have successfully installed DPDK
> and managed to run a few sample apps. However when I tried pktgen the kernel threw a SIGSEGV
> without me doing anything yet.
> $ sudo .app/x86_64-native-linuxapp-gcc/pktgen
> ====== Pktgen got a Segment Fault
> Obtained 11 stack frames.
> app/x86_64-native-linuxapp-gcc/pktgen() [0x468ba5]
> /lib/x86_64-linux-gnu/libc.so.6(+0x354b0) [0x7f1e618de4b0]
> app/x86_64-native-linuxapp-gcc/pktgen() [0x6c7c70]
> app/x86_64-native-linuxapp-gcc/pktgen(rte_eth_stats_get+0x79) [0x4a3fe9]
> app/x86_64-native-linuxapp-gcc/pktgen(pktgen_process_stats+0xa9) [0x46f0f9]
> app/x86_64-native-linuxapp-gcc/pktgen(rte_timer_manage+0x526) [0x48ca96]
> app/x86_64-native-linuxapp-gcc/pktgen(cli_start+0x26d) [0x71276d]
> app/x86_64-native-linuxapp-gcc/pktgen(pktgen_cli_start+0xb) [0x4509bb]
> app/x86_64-native-linuxapp-gcc/pktgen(main+0x7a6) [0x447b86]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0) [0x7f1e618c9830]
> app/x86_64-native-linuxapp-gcc/pktgen(_start+0x29) [0x44a639]
> # gdb .app/x86_64-native-linuxapp-gcc/pktgen
> Thread 1 "pktgen" received signal SIGSEGV, Segmentation fault.
> 0x00000000006c7c70 in vmxnet3_dev_stats_get ()
> I tried using older versions of DPDK and pktgen but nothing worked so far.
> Is it a problem on my end? Like, the way I set up the NICs in my VM? Or is it a bug?
More information about the users