kthread_create — create a kthread.
struct task_struct * kthread_create ( | int (* | threadfn( void *data) , |
void * | data, | |
const char | namefmt[], | |
...) ; |
threadfn
the function to run until signal_pending(current).
data
data ptr for threadfn
.
namefmt[]
printf-style name for the thread.
...
variable arguments
This helper function creates and names a kernel
thread. The thread will be stopped: use wake_up_process
to start
it. See also kthread_run
, kthread_create_on_cpu
.
When woken, the thread will run threadfn
() with data
as its
argument. threadfn
() can either call do_exit
directly if it is a
standalone thread for which noone will call kthread_stop
, or
return when 'kthread_should_stop
' is true (which means
kthread_stop
has been called). The return value should be zero
or a negative error number; it will be passed to kthread_stop
.
Returns a task_struct or ERR_PTR(-ENOMEM).