diff options
author | John Snow <jsnow@redhat.com> | 2018-08-29 21:57:26 -0400 |
---|---|---|
committer | Max Reitz <mreitz@redhat.com> | 2018-08-31 16:28:33 +0200 |
commit | f67432a2019caf05b57a146bf45c1024a5cb608e (patch) | |
tree | 8fac71ab094f84d2fe97941428fe69f3a3195844 /tests/test-blockjob-txn.c | |
parent | 7b43db3cd08f722d743c443ac3713195875d0301 (diff) | |
download | qemu-f67432a2019caf05b57a146bf45c1024a5cb608e.zip qemu-f67432a2019caf05b57a146bf45c1024a5cb608e.tar.gz qemu-f67432a2019caf05b57a146bf45c1024a5cb608e.tar.bz2 |
jobs: change start callback to run callback
Presently we codify the entry point for a job as the "start" callback,
but a more apt name would be "run" to clarify the idea that when this
function returns we consider the job to have "finished," except for
any cleanup which occurs in separate callbacks later.
As part of this clarification, change the signature to include an error
object and a return code. The error ptr is not yet used, and the return
code while captured, will be overwritten by actions in the job_completed
function.
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Message-id: 20180830015734.19765-2-jsnow@redhat.com
Reviewed-by: Jeff Cody <jcody@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'tests/test-blockjob-txn.c')
-rw-r--r-- | tests/test-blockjob-txn.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/tests/test-blockjob-txn.c b/tests/test-blockjob-txn.c index 58d9b87..3194924 100644 --- a/tests/test-blockjob-txn.c +++ b/tests/test-blockjob-txn.c @@ -38,25 +38,25 @@ static void test_block_job_complete(Job *job, void *opaque) bdrv_unref(bs); } -static void coroutine_fn test_block_job_run(void *opaque) +static int coroutine_fn test_block_job_run(Job *job, Error **errp) { - TestBlockJob *s = opaque; - BlockJob *job = &s->common; + TestBlockJob *s = container_of(job, TestBlockJob, common.job); while (s->iterations--) { if (s->use_timer) { - job_sleep_ns(&job->job, 0); + job_sleep_ns(job, 0); } else { - job_yield(&job->job); + job_yield(job); } - if (job_is_cancelled(&job->job)) { + if (job_is_cancelled(job)) { break; } } - job_defer_to_main_loop(&job->job, test_block_job_complete, + job_defer_to_main_loop(job, test_block_job_complete, (void *)(intptr_t)s->rc); + return s->rc; } typedef struct { @@ -80,7 +80,7 @@ static const BlockJobDriver test_block_job_driver = { .free = block_job_free, .user_resume = block_job_user_resume, .drain = block_job_drain, - .start = test_block_job_run, + .run = test_block_job_run, }, }; |