[dpdk-dev] [dpdk_dev]bug report: create_proc_read_entry() is not supported from linux kernel 3.10.x

Chi, Xiaobo (Nokia - CN/Hangzhou) xiaobo.chi at nokia.com
Wed Aug 5 10:26:58 CEST 2015

Anyone has ever tested the rte_kni.ko in igb mode?  If the following is confirmed as a bug, I would like to work out a patch. Thanks.
For file ~/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/ igb_procfs.c, there are following code. As to what I know, from Linux kernel 3.10.x, the functions create_proc_read_entry() and create_proc_entry() are not supported anymore, so we should use proc_create_data() for compatibility for both kernel 2.6 and 3.10.x and later versions.

/* called from igb_main.c */
int igb_procfs_init(struct igb_adapter *adapter)
        for (index = 0; ; index++) {
                if (igb_proc_entries[index].read == NULL) {
                if (!(create_proc_read_entry(igb_proc_entries[index].name,
                                           adapter))) {

                        rc = -ENOMEM;
                        goto fail;

root at distro:~$ uname -a
Linux distro 3.18.9-pc64-distro.git-v1.7 #1 SMP Thu May 7 12:30:41 UTC 2015 x86_64 GNU/Linux
root at distro:~$ cat /proc/kallsyms | grep create_proc_read_entry
root at distro:~$ cat /proc/kallsyms | grep proc_create_data
ffffffff803e1fd0 T proc_create_data
ffffffff80a30dd0 R __ksymtab_proc_create_data
ffffffff80a4738a r __kstrtab_proc_create_data
root at distro:~$

chi Xiaobo

More information about the dev mailing list