worker_thread
struct task_struct *worker_thread;
phba->worker_thread = NULL;
if (phba->worker_thread) {
kthread_stop(phba->worker_thread);
kthread_stop(phba->worker_thread);
kthread_stop(phba->worker_thread);
phba->worker_thread = kthread_run(lpfc_do_work, phba,
if (IS_ERR(phba->worker_thread)) {
error = PTR_ERR(phba->worker_thread);
kthread_stop(phba->worker_thread);
phba->worker_thread = kthread_run(lpfc_do_work, phba,
if (IS_ERR(phba->worker_thread)) {
error = PTR_ERR(phba->worker_thread);
phba->worker_thread = kthread_run(lpfc_do_work, phba,
if (IS_ERR(phba->worker_thread)) {
error = PTR_ERR(phba->worker_thread);
if (phba->worker_thread)
kthread_stop(phba->worker_thread);
worker->task = kthread_create_on_node(worker_thread, worker,
static int worker_thread(void *__worker);
ret = pthread_create(pthreads + t, NULL, worker_thread, td);
ret = pthread_create(&td->pthread, NULL, worker_thread, td);
worker_thread(threads + 0);
worker_thread(threads + 1);
pthread_t worker_thread[num_threads];
pthread_create(&worker_thread[0], NULL, &creator_func, xa);
pthread_create(&worker_thread[i], NULL, &iterator_func, xa);
pthread_join(worker_thread[i], NULL);
pthread_t worker_thread[num_threads];
pthread_create(&worker_thread[0], NULL, &load_creator, xa);
pthread_create(&worker_thread[i], NULL, &load_worker, xa);
pthread_join(worker_thread[i], NULL);