From: Thomas Munro Date: Sun, 5 Apr 2026 06:01:10 +0000 (+1200) Subject: aio: Simplify pgaio_worker_submit(). X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fc44f106657a0b2f55147d8309a676a6ac555a95;p=thirdparty%2Fpostgresql.git aio: Simplify pgaio_worker_submit(). Merge pgaio_worker_submit_internal() and pgaio_worker_submit(). The separation didn't serve any purpose. Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/CA%2BhUKG%2Bm4xV0LMoH2c%3DoRAdEXuCnh%2BtGBTWa7uFeFMGgTLAw%2BQ%40mail.gmail.com --- diff --git a/src/backend/storage/aio/method_worker.c b/src/backend/storage/aio/method_worker.c index efe38e9f113..e24357a7a0a 100644 --- a/src/backend/storage/aio/method_worker.c +++ b/src/backend/storage/aio/method_worker.c @@ -239,8 +239,8 @@ pgaio_worker_needs_synchronous_execution(PgAioHandle *ioh) || !pgaio_io_can_reopen(ioh); } -static void -pgaio_worker_submit_internal(int num_staged_ios, PgAioHandle **staged_ios) +static int +pgaio_worker_submit(uint16 num_staged_ios, PgAioHandle **staged_ios) { PgAioHandle **synchronous_ios = NULL; int nsync = 0; @@ -249,6 +249,9 @@ pgaio_worker_submit_internal(int num_staged_ios, PgAioHandle **staged_ios) Assert(num_staged_ios <= PGAIO_SUBMIT_BATCH_SIZE); + for (int i = 0; i < num_staged_ios; i++) + pgaio_io_prepare_submit(staged_ios[i]); + if (LWLockConditionalAcquire(AioWorkerSubmissionQueueLock, LW_EXCLUSIVE)) { for (int i = 0; i < num_staged_ios; ++i) @@ -299,19 +302,6 @@ pgaio_worker_submit_internal(int num_staged_ios, PgAioHandle **staged_ios) pgaio_io_perform_synchronously(synchronous_ios[i]); } } -} - -static int -pgaio_worker_submit(uint16 num_staged_ios, PgAioHandle **staged_ios) -{ - for (int i = 0; i < num_staged_ios; i++) - { - PgAioHandle *ioh = staged_ios[i]; - - pgaio_io_prepare_submit(ioh); - } - - pgaio_worker_submit_internal(num_staged_ios, staged_ios); return num_staged_ios; }