2008-03-07 05:49:48

by Peter Teoh

[permalink] [raw]
Subject: What is the difference between kernel_thread() and kthread_create()?

According to Documentation/feature-removal-schedule.txt,
kernel_thread() is supposed to be replaced by kthread_create(). I
saw a few patches doing these. Seemingly, NO DIFFERENCE, just replace
the kernel_thread() with kthread_create(), but sometimes it replace it
with kthread_run() instead (thin wrapper around kthread_create())
Still not quite sure why yet.

But more fundamental is the file init/main.c: which have a
kernel_thread() to create the first init task. Only a few
kernel_thread() API left, mostly exotic architecture. But this
central figure does not get replaced - is there a reason for it? So
question is - is there any difference between kernel_thread() and
kthread_create() in the context of init/main.c?

--
Regards,
Peter Teoh