kthread_create_on_node — create a kthread.
struct task_struct * kthread_create_on_node ( | int (*threadfn)
(void *data), |
| void * data, | |
| int node, | |
| const char namefmt[], | |
...); |
threadfnthe function to run until signal_pending(current).
data
data ptr for threadfn.
nodememory node number.
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.
If thread is going to be bound on a particular cpu, give its node
in node, to get NUMA affinity for kthread stack, or else give -1.
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 no one 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) or ERR_PTR(-EINTR).