[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


Hi,

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.

Regards,
Long.




----- 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

Hi,

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:

drivers/net/vmxnet3/vmxnet3_ethdev.c:898
vmxnet3_hw_tx_stats_get(hw, i, &txStats);

Should be related to how pktgen called this function? Because the other app didn't crash.

Thanks,
Long


> ----- 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
> 
> Hi, 
> 
> 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:/> 
> ====== 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
> 
> 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?
> 
> BR,
> 
> Long.


More information about the users mailing list