Lines Matching refs:data
21 WorkerTestData *data = opaque; in worker_cb() local
22 return qatomic_fetch_inc(&data->n); in worker_cb()
27 WorkerTestData *data = opaque; in long_cb() local
28 if (qatomic_cmpxchg(&data->n, 0, 1) == 0) { in long_cb()
30 qatomic_or(&data->n, 2); in long_cb()
37 WorkerTestData *data = opaque; in done_cb() local
38 g_assert(data->ret == -EINPROGRESS || data->ret == -ECANCELED); in done_cb()
39 data->ret = ret; in done_cb()
40 data->aiocb = NULL; in done_cb()
48 WorkerTestData data = { .n = 0 }; in test_submit() local
49 thread_pool_submit(worker_cb, &data); in test_submit()
50 while (data.n == 0) { in test_submit()
53 g_assert_cmpint(data.n, ==, 1); in test_submit()
58 WorkerTestData data = { .n = 0, .ret = -EINPROGRESS }; in test_submit_aio() local
59 data.aiocb = thread_pool_submit_aio(worker_cb, &data, in test_submit_aio()
60 done_cb, &data); in test_submit_aio()
64 g_assert_cmpint(data.ret, ==, -EINPROGRESS); in test_submit_aio()
65 while (data.ret == -EINPROGRESS) { in test_submit_aio()
69 g_assert_cmpint(data.n, ==, 1); in test_submit_aio()
70 g_assert_cmpint(data.ret, ==, 0); in test_submit_aio()
75 WorkerTestData *data = opaque; in co_test_cb() local
78 data->n = 0; in co_test_cb()
79 data->ret = -EINPROGRESS; in co_test_cb()
80 thread_pool_submit_co(worker_cb, data); in co_test_cb()
84 g_assert_cmpint(data->n, ==, 1); in co_test_cb()
85 data->ret = 0; in co_test_cb()
93 WorkerTestData data; in test_submit_co() local
94 Coroutine *co = qemu_coroutine_create(co_test_cb, &data); in test_submit_co()
101 g_assert_cmpint(data.ret, ==, -EINPROGRESS); in test_submit_co()
105 while (data.ret == -EINPROGRESS) { in test_submit_co()
112 g_assert_cmpint(data.ret, ==, 0); in test_submit_co()
117 WorkerTestData data[100]; in test_submit_many() local
122 data[i].n = 0; in test_submit_many()
123 data[i].ret = -EINPROGRESS; in test_submit_many()
124 thread_pool_submit_aio(worker_cb, &data[i], done_cb, &data[i]); in test_submit_many()
132 g_assert_cmpint(data[i].n, ==, 1); in test_submit_many()
133 g_assert_cmpint(data[i].ret, ==, 0); in test_submit_many()
139 WorkerTestData data[100]; in do_test_cancel() local
150 data[i].n = 0; in do_test_cancel()
151 data[i].ret = -EINPROGRESS; in do_test_cancel()
152 data[i].aiocb = thread_pool_submit_aio(long_cb, &data[i], in do_test_cancel()
153 done_cb, &data[i]); in do_test_cancel()
173 if (qatomic_cmpxchg(&data[i].n, 0, 4) == 0) { in do_test_cancel()
174 data[i].ret = -ECANCELED; in do_test_cancel()
176 bdrv_aio_cancel(data[i].aiocb); in do_test_cancel()
178 bdrv_aio_cancel_async(data[i].aiocb); in do_test_cancel()
187 if (data[i].aiocb && qatomic_read(&data[i].n) < 4) { in do_test_cancel()
190 bdrv_aio_cancel(data[i].aiocb); in do_test_cancel()
192 bdrv_aio_cancel_async(data[i].aiocb); in do_test_cancel()
203 g_assert(data[i].aiocb == NULL); in do_test_cancel()
204 switch (data[i].n) { in do_test_cancel()
210 g_assert_cmpint(data[i].ret, ==, 0); in do_test_cancel()
214 g_assert_cmpint(data[i].ret, ==, -ECANCELED); in do_test_cancel()