diff options
author | Kevin Wolf <kwolf@redhat.com> | 2018-05-04 12:17:20 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2018-05-23 14:30:51 +0200 |
commit | 30a5c887bf4a7e00d0e0ecbb08509e8ba2902620 (patch) | |
tree | 1dac007a566de2715e9f73d62a74b98cc45f019e /block | |
parent | 2e1795b58131427719c7cd11f8b9b6984b3f24f8 (diff) | |
download | qemu-30a5c887bf4a7e00d0e0ecbb08509e8ba2902620.zip qemu-30a5c887bf4a7e00d0e0ecbb08509e8ba2902620.tar.gz qemu-30a5c887bf4a7e00d0e0ecbb08509e8ba2902620.tar.bz2 |
job: Move progress fields to Job
BlockJob has fields .offset and .len, which are actually misnomers today
because they are no longer tied to block device sizes, but just progress
counters. As such they make a lot of sense in generic Jobs.
This patch moves the fields to Job and renames them to .progress_current
and .progress_total to describe their function better.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'block')
-rw-r--r-- | block/backup.c | 8 | ||||
-rw-r--r-- | block/commit.c | 4 | ||||
-rw-r--r-- | block/mirror.c | 4 | ||||
-rw-r--r-- | block/stream.c | 4 |
4 files changed, 10 insertions, 10 deletions
diff --git a/block/backup.c b/block/backup.c index 6f4f3df..4e228e9 100644 --- a/block/backup.c +++ b/block/backup.c @@ -160,7 +160,7 @@ static int coroutine_fn backup_do_cow(BackupBlockJob *job, * offset field is an opaque progress value, it is not a disk offset. */ job->bytes_read += n; - block_job_progress_update(&job->common, n); + job_progress_update(&job->common.job, n); } out: @@ -406,8 +406,8 @@ static void backup_incremental_init_copy_bitmap(BackupBlockJob *job) bdrv_set_dirty_iter(dbi, next_cluster * job->cluster_size); } - /* TODO block_job_progress_set_remaining() would make more sense */ - block_job_progress_update(&job->common, + /* TODO job_progress_set_remaining() would make more sense */ + job_progress_update(&job->common.job, job->len - hbitmap_count(job->copy_bitmap) * job->cluster_size); bdrv_dirty_iter_free(dbi); @@ -425,7 +425,7 @@ static void coroutine_fn backup_run(void *opaque) qemu_co_rwlock_init(&job->flush_rwlock); nb_clusters = DIV_ROUND_UP(job->len, job->cluster_size); - block_job_progress_set_remaining(&job->common, job->len); + job_progress_set_remaining(&job->common.job, job->len); job->copy_bitmap = hbitmap_alloc(nb_clusters, 0); if (job->sync_mode == MIRROR_SYNC_MODE_INCREMENTAL) { diff --git a/block/commit.c b/block/commit.c index b0a847e..6206661 100644 --- a/block/commit.c +++ b/block/commit.c @@ -150,7 +150,7 @@ static void coroutine_fn commit_run(void *opaque) if (len < 0) { goto out; } - block_job_progress_set_remaining(&s->common, len); + job_progress_set_remaining(&s->common.job, len); ret = base_len = blk_getlength(s->base); if (base_len < 0) { @@ -196,7 +196,7 @@ static void coroutine_fn commit_run(void *opaque) } } /* Publish progress */ - block_job_progress_update(&s->common, n); + job_progress_update(&s->common.job, n); if (copy) { delay_ns = block_job_ratelimit_get_delay(&s->common, n); diff --git a/block/mirror.c b/block/mirror.c index bdc1b5b..dcb66ec 100644 --- a/block/mirror.c +++ b/block/mirror.c @@ -119,7 +119,7 @@ static void mirror_iteration_done(MirrorOp *op, int ret) bitmap_set(s->cow_bitmap, chunk_num, nb_chunks); } if (!s->initial_zeroing_ongoing) { - block_job_progress_update(&s->common, op->bytes); + job_progress_update(&s->common.job, op->bytes); } } qemu_iovec_destroy(&op->qiov); @@ -792,7 +792,7 @@ static void coroutine_fn mirror_run(void *opaque) /* cnt is the number of dirty bytes remaining and s->bytes_in_flight is * the number of bytes currently being processed; together those are * the current remaining operation length */ - block_job_progress_set_remaining(&s->common, s->bytes_in_flight + cnt); + job_progress_set_remaining(&s->common.job, s->bytes_in_flight + cnt); /* Note that even when no rate limit is applied we need to yield * periodically with no pending I/O so that bdrv_drain_all() returns. diff --git a/block/stream.c b/block/stream.c index 8546c41..a5d6e0c 100644 --- a/block/stream.c +++ b/block/stream.c @@ -121,7 +121,7 @@ static void coroutine_fn stream_run(void *opaque) ret = len; goto out; } - block_job_progress_set_remaining(&s->common, len); + job_progress_set_remaining(&s->common.job, len); buf = qemu_blockalign(bs, STREAM_BUFFER_SIZE); @@ -184,7 +184,7 @@ static void coroutine_fn stream_run(void *opaque) ret = 0; /* Publish progress */ - block_job_progress_update(&s->common, n); + job_progress_update(&s->common.job, n); if (copy) { delay_ns = block_job_ratelimit_get_delay(&s->common, n); } else { |