Hello,
I am trying to run L2FW DTS with pktgen on 
DELL R720 server, and I get "Illegal instruction".
I tried to find the root cause of the problem, and it seems related to
the pktgen binary, to something related to a CPU flag (RTE_CPUFLAG_RTM flag (Transactional memory).

I cloned the latest DTS repo, and extracted pktgen 
from it (it is in the dep/tgen.tgz tar file).
My first question is: is this binary created from the 
official pktgen tree ? (in case it is, which version of pktgen is it?) or is it after applying some patches? (the 
reason for this question will be clear soon).

Second: when I try to run it as stand alone and look at the core dump, I see the 
following:

./pktgen

Illegal instruction (core dumped)

gdb ./pktgen core
GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.3) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./pktgen...done.
[New LWP 6639]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
---Type <return> to continue, or q <return> to quit---
Core was generated by `./pktgen'.
Program terminated with signal SIGILL, Illegal instruction.
#0  0x000000000043417d in rte_cpu_get_flag_enabled (feature=6217008,
    feature@entry=RTE_CPUFLAG_RTM)
    at /root/dpdk/x86_64-native-linuxapp-gcc/include/rte_cpuflags.h:303
303     /root/dpdk/x86_64-native-linuxapp-gcc/include/rte_cpuflags.h: No such file or directory.
(gdb) bt
#0  0x000000000043417d in rte_cpu_get_flag_enabled (feature=6217008,
    feature@entry=RTE_CPUFLAG_RTM)
    at /root/dpdk/x86_64-native-linuxapp-gcc/include/rte_cpuflags.h:303
#1  0x00000000004341ae in rte_rtm_init ()
    at /root/dpdk/x86_64-native-linuxapp-gcc/include/rte_spinlock.h:103
#2  0x00000000005d451d in __libc_csu_init ()
#3  0x00007fe2fda1aed5 in __libc_start_main (main=0x433400 <main>,
    argc=1, argv=0x7ffd0c6a5868, init=0x5d44d0 <__libc_csu_init>,
    fini=<optimized out>, rtld_fini=<optimized out>,
    stack_end=0x7ffd0c6a5858) at libc-start.c:246
#4  0x0000000000435385 in _start ()
(gdb)


- and I get the same issue of "illegal instruction" and the same results also with older 
official DTS releases, like https://dpdk.org/browse/tools/dts/snapshot/dts-17.11.tar.xz
and https://dpdk.org/browse/tools/dts/snapshot/dts-17.05.tar.xz

Regards,
Dan