lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 10 Oct 2016 08:53:03 -0400 From: Tejun Heo <tj@...nel.org> To: Balbir Singh <bsingharora@...il.com> Cc: Michael Ellerman <mpe@...erman.id.au>, torvalds@...ux-foundation.org, linuxppc-dev@...ts.ozlabs.org, akpm@...ux-foundation.org, kernel-team@...com, jiangshanlai@...il.com, linux-kernel@...r.kernel.org Subject: Re: Oops on Power8 (was Re: [PATCH v2 1/7] workqueue: make workqueue available early during boot) On Mon, Oct 10, 2016 at 10:17:16PM +1100, Balbir Singh wrote: > rest_init() > { > ... > kernel_thread(kernel_init, NULL, CLONE_FS); > numa_default_policy(); > pid = kernel_thread(kthreadd, NULL, CLONE_FS | CLONE_FILES); > rcu_read_lock(); > kthreadd_task = find_task_by_pid_ns(pid, &init_pid_ns); > ... > > } > > create_worker() needs kthreadd, it wakes up kthreadd in kthread_create_on_node, > workqueue_init() is called from kernel_init() , but kthreadd is created after > the call to kernel_init(), so its touch and go But the first thing kernel_init_freeable() does is wait_for_completion(&kthreadd_done). Thanks. -- tejun
Powered by blists - more mailing lists