On Tue, 10 Jul 2012 11:50:34 +0300 "Kirill A. Shutemov" <kirill.shute...@linux.intel.com> wrote:
> On Tue, Jun 26, 2012 at 03:04:25PM +0300, Kirill A. Shutemov wrote: > > Hi, > > > > Patch to move kern_unmount() out of exit_group() code path is below. > > Andrew, do you have any opinion about the patch? I've forgotten what this is all about and the changelog didn't help. <finds the thread, reads it> It doesn't seem very compelling - moving the action into a kernel thread seems a bit of a hack and by adding more async behaviour it makes the kernel a more complex and fragile thing. I'm curious about Dmitry's test: : #define _GNU_SOURCE : #include <unistd.h> : #include <sched.h> : #include <stdlib.h> : #include <sys/wait.h> : : int : main(void) : { : int i; : for (i = 0; i < 1024; i++) { : if (fork()) { : wait(NULL); : continue; : } : unshare(CLONE_NEWIPC); : exit(0); : } : return 0; : } : : On 3.4.4 with rcu_barrier patch: : 0.09user 0.00system 0:32.77elapsed 0%CPU (0avgtext+0avgdata 1472maxresident)k : 0inputs+0outputs (0major+38017minor)pagefaults 0swaps : : On 3.4.4 with rcu_barrier patch and your new patch: : 0.00user 0.06system 0:32.77elapsed 0%CPU (0avgtext+0avgdata 1472maxresident)k : 0inputs+0outputs (0major+38017minor)pagefaults 0swaps Am I reading that right? 1000 forks take 33 seconds, with basically all of it just sitting there asleep? This look quite terrible - what causes this? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/