[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 02/24] thread-pool: Remove thread_pool_submit() function
From: |
Peter Xu |
Subject: |
Re: [PATCH v3 02/24] thread-pool: Remove thread_pool_submit() function |
Date: |
Wed, 4 Dec 2024 14:24:59 -0500 |
On Sun, Nov 17, 2024 at 08:19:57PM +0100, Maciej S. Szmigiero wrote:
> From: "Maciej S. Szmigiero" <maciej.szmigiero@oracle.com>
>
> This function name conflicts with one used by a future generic thread pool
> function and it was only used by one test anyway.
>
> Update the trace event name in thread_pool_submit_aio() accordingly.
>
> Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
One nitpick:
> ---
> include/block/thread-pool.h | 3 +--
> tests/unit/test-thread-pool.c | 2 +-
> util/thread-pool.c | 7 +------
> util/trace-events | 2 +-
> 4 files changed, 4 insertions(+), 10 deletions(-)
>
> diff --git a/include/block/thread-pool.h b/include/block/thread-pool.h
> index 948ff5f30c31..4f6694026123 100644
> --- a/include/block/thread-pool.h
> +++ b/include/block/thread-pool.h
> @@ -30,13 +30,12 @@ ThreadPool *thread_pool_new(struct AioContext *ctx);
> void thread_pool_free(ThreadPool *pool);
>
> /*
> - * thread_pool_submit* API: submit I/O requests in the thread's
> + * thread_pool_submit_{aio,co} API: submit I/O requests in the thread's
> * current AioContext.
> */
> BlockAIOCB *thread_pool_submit_aio(ThreadPoolFunc *func, void *arg,
> BlockCompletionFunc *cb, void *opaque);
> int coroutine_fn thread_pool_submit_co(ThreadPoolFunc *func, void *arg);
> -void thread_pool_submit(ThreadPoolFunc *func, void *arg);
>
> void thread_pool_update_params(ThreadPool *pool, struct AioContext *ctx);
>
> diff --git a/tests/unit/test-thread-pool.c b/tests/unit/test-thread-pool.c
> index 1483e53473db..7a7055141ddb 100644
> --- a/tests/unit/test-thread-pool.c
> +++ b/tests/unit/test-thread-pool.c
> @@ -46,7 +46,7 @@ static void done_cb(void *opaque, int ret)
> static void test_submit(void)
The test name was still trying to follow the name of API. It can be
renamed to test_submit_no_complete() (also the test name str below).
> {
> WorkerTestData data = { .n = 0 };
> - thread_pool_submit(worker_cb, &data);
> + thread_pool_submit_aio(worker_cb, &data, NULL, NULL);
> while (data.n == 0) {
> aio_poll(ctx, true);
> }
> diff --git a/util/thread-pool.c b/util/thread-pool.c
> index 27eb777e855b..2f751d55b33f 100644
> --- a/util/thread-pool.c
> +++ b/util/thread-pool.c
> @@ -256,7 +256,7 @@ BlockAIOCB *thread_pool_submit_aio(ThreadPoolFunc *func,
> void *arg,
>
> QLIST_INSERT_HEAD(&pool->head, req, all);
>
> - trace_thread_pool_submit(pool, req, arg);
> + trace_thread_pool_submit_aio(pool, req, arg);
>
> qemu_mutex_lock(&pool->lock);
> if (pool->idle_threads == 0 && pool->cur_threads < pool->max_threads) {
> @@ -290,11 +290,6 @@ int coroutine_fn thread_pool_submit_co(ThreadPoolFunc
> *func, void *arg)
> return tpc.ret;
> }
>
> -void thread_pool_submit(ThreadPoolFunc *func, void *arg)
> -{
> - thread_pool_submit_aio(func, arg, NULL, NULL);
> -}
> -
> void thread_pool_update_params(ThreadPool *pool, AioContext *ctx)
> {
> qemu_mutex_lock(&pool->lock);
> diff --git a/util/trace-events b/util/trace-events
> index 49a4962e1886..5be12d7fab89 100644
> --- a/util/trace-events
> +++ b/util/trace-events
> @@ -14,7 +14,7 @@ aio_co_schedule_bh_cb(void *ctx, void *co) "ctx %p co %p"
> reentrant_aio(void *ctx, const char *name) "ctx %p name %s"
>
> # thread-pool.c
> -thread_pool_submit(void *pool, void *req, void *opaque) "pool %p req %p
> opaque %p"
> +thread_pool_submit_aio(void *pool, void *req, void *opaque) "pool %p req %p
> opaque %p"
> thread_pool_complete(void *pool, void *req, void *opaque, int ret) "pool %p
> req %p opaque %p ret %d"
> thread_pool_cancel(void *req, void *opaque) "req %p opaque %p"
>
>
--
Peter Xu
- Re: [PATCH v3 02/24] thread-pool: Remove thread_pool_submit() function,
Peter Xu <=