[dpdk-dev] DPDK drivers should not use kernel version
hemant.agrawal at nxp.com
Fri Jun 23 09:33:55 CEST 2017
On 6/21/2017 9:58 PM, Stephen Hemminger wrote:
> 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.
what is the alternative than?
There are many legitimate cases, where userspace code need to make
decision on the basis underlying kernel version.
In some cases, user space code can add error handling and fallback, but
it is not possible in all cases.
> $ 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 ||
More information about the dev