[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHvAHW8aq0Tb0tnNjQAySyDe_pwxHk2-+EHr_yPavuz_aKqAyw@mail.gmail.com>
Date: Sun, 2 Jul 2017 00:50:08 -0500
From: Leon Yang <leon.gh.yang@...il.com>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net
Subject: Way to Know When cleanup_net() Calls Are Done
Hi,
I am measuring the time cost of parallel creation and destruction of
net namespaces.
As cleanup_net() is invoked from workqueue, the exit of a net
namespace does not mean the cleanup is completed. Therefore I use
ftrace to count the number of net_drop_ns() are called. But I found
that the number of namespaces created does not match with the number
of net_drop_ns() calls even after a long wait.
Can you give some hints on why this is happening? and what would be
the correct way to know when the last cleanup_net() is done?
Thanks,
Leon
*psudo code of my program:
n = 0;
while (1) {
pid = fork();
if (pid == 0) {
unshare(CLONE_NEWNET);
exit(0);
} else if (/* run out of PID */) {
/* wait for all the children */
/* get total time for n creations+destructions */
n = 0;
} else { /* do nothing */ }
n++;
}
Powered by blists - more mailing lists