Unifies the thread vs process parts a bit more.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
pending++;
continue;
reaped:
pending++;
continue;
reaped:
- if (td->o.use_thread) {
- long ret;
-
- dprint(FD_PROCESS, "joining tread %d\n", td->pid);
- if (pthread_join(td->thread, (void *) &ret)) {
- dprint(FD_PROCESS, "join failed %ld\n", ret);
- perror("pthread_join");
- }
- }
-
(*nr_running)--;
(*m_rate) -= td->o.ratemin;
(*t_rate) -= td->o.rate;
(*nr_running)--;
(*m_rate) -= td->o.ratemin;
(*t_rate) -= td->o.rate;
dprint(FD_PROCESS, "will pthread_create\n");
if (pthread_create(&td->thread, NULL,
thread_main, td)) {
dprint(FD_PROCESS, "will pthread_create\n");
if (pthread_create(&td->thread, NULL,
thread_main, td)) {
- perror("thread_create");
+ perror("pthread_create");
+ if (pthread_detach(td->thread) < 0)
+ perror("pthread_detach");
} else {
dprint(FD_PROCESS, "will fork\n");
if (!fork()) {
} else {
dprint(FD_PROCESS, "will fork\n");
if (!fork()) {