X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=workqueue.c;h=7a69be21803656a10326c1b525a58502289ee39c;hp=8f6963f58aaadac55ef37d378f8c7f05c928516e;hb=f6cbf8ac4f70c800bbbfc23c5dcf44ed619c0acc;hpb=2a2743361cf643b9dd2ba3e491da62e7cb83a101 diff --git a/workqueue.c b/workqueue.c index 8f6963f5..7a69be21 100644 --- a/workqueue.c +++ b/workqueue.c @@ -124,6 +124,7 @@ int workqueue_enqueue(struct workqueue *wq, struct io_u *io_u) if (ddir_rw(ddir)) { parent->io_issues[ddir]++; parent->io_issue_bytes[ddir] += io_u->xfer_buflen; + parent->rate_io_issue_bytes[ddir] += io_u->xfer_buflen; } pthread_mutex_lock(&sw->lock); @@ -161,6 +162,7 @@ static int init_submit_worker(struct submit_worker *sw) memcpy(&td->ts, &parent->ts, sizeof(td->ts)); td->o.uid = td->o.gid = -1U; dup_files(td, parent); + td->eo = parent->eo; fio_options_mem_dupe(td); if (ioengine_load(td)) @@ -184,7 +186,7 @@ static int init_submit_worker(struct submit_worker *sw) fio_gettime(&td->epoch, NULL); fio_getrusage(&td->ru_start); - clear_io_state(td); + clear_io_state(td, 1); td_set_runstate(td, TD_RUNNING); td->flags |= TD_F_CHILD; @@ -197,7 +199,7 @@ err: return 1; } -#ifdef CONFIG_SFA +#ifdef CONFIG_SFAA static void sum_val(uint64_t *dst, uint64_t *src) { if (*src) { @@ -218,7 +220,7 @@ static void sum_val(uint64_t *dst, uint64_t *src) static void sum_ddir(struct thread_data *dst, struct thread_data *src, enum fio_ddir ddir) { -#ifndef CONFIG_SFA +#ifndef CONFIG_SFAA pthread_mutex_lock(&dst->io_wq.stat_lock); pthread_mutex_lock(&src->io_wq.stat_lock); #endif @@ -229,7 +231,7 @@ static void sum_ddir(struct thread_data *dst, struct thread_data *src, sum_val(&dst->this_io_bytes[ddir], &src->this_io_bytes[ddir]); sum_val(&dst->bytes_done[ddir], &src->bytes_done[ddir]); -#ifndef CONFIG_SFA +#ifndef CONFIG_SFAA pthread_mutex_unlock(&src->io_wq.stat_lock); pthread_mutex_unlock(&dst->io_wq.stat_lock); #endif