Thread
-
Re: BUG #19368: f54af9f does not create the correct macro for autotools build
Tom Lane <tgl@sss.pgh.pa.us> — 2025-12-31T15:59:32Z
PG Bug reporting form <noreply@postgresql.org> writes: > The commit f54af9f2679d added a macro HAVE_LIBURING_QUEUE_INIT_MEM that is > checked to see if slowdown from memory mappings can be avoided when using > io_uring. > This HAVE_LIBURING_QUEUE_INIT_MEM is set by Meson build after checking > liburing. > However, the autotools build seems to set a different macro, > HAVE_IO_URING_QUEUE_INIT_MEM, which is never used. > This means when the server is built with autotools, the slowdown when using > io_uring can never be avoided. This is indeed busted, but I'd argue that the autoconf build has the right macro name and meson and the C code are using the wrong one: if cc.has_function('io_uring_queue_init_mem', dependencies: liburing, args: test_c_args) cdata.set('HAVE_LIBURING_QUEUE_INIT_MEM', 1) endif That's clearly not following the "HAVE_function" convention. regards, tom lane