Looking at some other issues, I noticed that both the TAP and MLX5 device drivers are looking at kernel version through uname. Although this may seem like a good way to deal with kernel API changes, it is not reliable.
Enterprise kernel distro vendors never change kernel version but do backport features from later kernels. Therefore the behavior expected may change even though kernel version doesn't change. Also kernel version does not dictate that the expected feature (like flower) is in the kernel configuration. I recommend this be looked for in all future submissions. Maybe even flagged as error in DPDK version of checkpatch. $ git blame drivers/net/mlx5/mlx5_ethdev.c | grep uname 3a49ffe38a950 (Shahaf Shuler 2017-02-09 14:29:54 +0200 895) if (uname(&utsname) == -1 || $ git blame drivers/net/tap/rte_eth_tap.c | grep uname de96fe68ae959 (Pascal Mazon 2017-03-23 09:33:57 +0100 1169) if (uname(&utsname) == -1 ||