Lines Matching refs:threads

464 	struct smoke_thread *threads;  in mock_breadcrumbs_smoketest()  local
474 threads = kcalloc(ncpus, sizeof(*threads), GFP_KERNEL); in mock_breadcrumbs_smoketest()
475 if (!threads) in mock_breadcrumbs_smoketest()
502 threads[n].worker = worker; in mock_breadcrumbs_smoketest()
503 threads[n].t = &t; in mock_breadcrumbs_smoketest()
504 threads[n].stop = false; in mock_breadcrumbs_smoketest()
505 threads[n].result = 0; in mock_breadcrumbs_smoketest()
507 kthread_init_work(&threads[n].work, in mock_breadcrumbs_smoketest()
509 kthread_queue_work(worker, &threads[n].work); in mock_breadcrumbs_smoketest()
517 WRITE_ONCE(threads[n].stop, true); in mock_breadcrumbs_smoketest()
518 kthread_flush_work(&threads[n].work); in mock_breadcrumbs_smoketest()
519 err = READ_ONCE(threads[n].result); in mock_breadcrumbs_smoketest()
523 kthread_destroy_worker(threads[n].worker); in mock_breadcrumbs_smoketest()
538 kfree(threads); in mock_breadcrumbs_smoketest()
1618 struct parallel_thread *threads; in live_parallel_engines() local
1628 threads = kcalloc(nengines, sizeof(*threads), GFP_KERNEL); in live_parallel_engines()
1629 if (!threads) in live_parallel_engines()
1655 threads[idx].worker = worker; in live_parallel_engines()
1656 threads[idx].result = 0; in live_parallel_engines()
1657 threads[idx].engine = engine; in live_parallel_engines()
1659 kthread_init_work(&threads[idx].work, *fn); in live_parallel_engines()
1660 kthread_queue_work(worker, &threads[idx].work); in live_parallel_engines()
1668 if (!threads[idx].worker) in live_parallel_engines()
1671 kthread_flush_work(&threads[idx].work); in live_parallel_engines()
1672 status = READ_ONCE(threads[idx].result); in live_parallel_engines()
1676 kthread_destroy_worker(threads[idx++].worker); in live_parallel_engines()
1683 kfree(threads); in live_parallel_engines()
1732 struct smoke_thread *threads; in live_breadcrumbs_smoketest() local
1762 threads = kcalloc(ncpus * nengines, sizeof(*threads), GFP_KERNEL); in live_breadcrumbs_smoketest()
1763 if (!threads) { in live_breadcrumbs_smoketest()
1815 threads[i].worker = worker; in live_breadcrumbs_smoketest()
1816 threads[i].t = &smoke[idx]; in live_breadcrumbs_smoketest()
1818 kthread_init_work(&threads[i].work, in live_breadcrumbs_smoketest()
1820 kthread_queue_work(worker, &threads[i].work); in live_breadcrumbs_smoketest()
1837 if (!threads[i].worker) in live_breadcrumbs_smoketest()
1840 WRITE_ONCE(threads[i].stop, true); in live_breadcrumbs_smoketest()
1841 kthread_flush_work(&threads[i].work); in live_breadcrumbs_smoketest()
1842 err = READ_ONCE(threads[i].result); in live_breadcrumbs_smoketest()
1846 kthread_destroy_worker(threads[i].worker); in live_breadcrumbs_smoketest()
1860 kfree(threads); in live_breadcrumbs_smoketest()