kthread_create
Prev | Internal Functions | Next

## Name

kthread_create — create a kthread.

## Synopsis

`struct task_struct * kthread_create (` | int (* | threadfn`(`void *data`)`,
| void * | data,
| const char | namefmt[],
|  | ...`)`;

## Arguments

`threadfn`

  the function to run until signal_pending(current).

`data`

  data ptr for `threadfn`.

`namefmt[]`

  printf-style name for the thread.

`...`

  variable arguments

## Description

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).

Prev | Up | Next
kthread_should_stop | Home | kthread_bind