[dpdk-dev] [PATCH] kni: Passing task_pid_vnr(current) to get_net_ns_by_pid() in kni_ioctl_create()
Wenfeng Liu
liuwf at arraynetworks.com.cn
Mon Jun 15 06:07:33 CEST 2015
In containers like docker, current->pid returns current process's global PID instead of its
own PID under containers's PID namespace, and get_net_ns_by_pid() suppose to accept a virtual
PID under its own namespace, so we should use task_pid_vnr(current) to get current process's
virtual PID instead of current->pid.
Signed-off-by: Wenfeng Liu <liuwf at arraynetworks.com.cn>
---
lib/librte_eal/linuxapp/kni/kni_misc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/librte_eal/linuxapp/kni/kni_misc.c b/lib/librte_eal/linuxapp/kni/kni_misc.c
index 1935d32..18fb677 100644
--- a/lib/librte_eal/linuxapp/kni/kni_misc.c
+++ b/lib/librte_eal/linuxapp/kni/kni_misc.c
@@ -359,7 +359,7 @@ kni_ioctl_create(unsigned int ioctl_num, unsigned long ioctl_param)
return -EBUSY;
}
- net = get_net_ns_by_pid(current->pid);
+ net = get_net_ns_by_pid(task_pid_vnr(current));
if (IS_ERR(net)) {
free_netdev(net_dev);
return PTR_ERR(net);
--
1.8.3.1
More information about the dev
mailing list