Re: BUG #19796: io_uring crashes with specific kernel/liburing versions + io_max_concurrency due to rings overlap

From: Andrey Rachitskiy <pl0h0yp1(at)gmail(dot)com>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: exclusion(at)gmail(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #19796: io_uring crashes with specific kernel/liburing versions + io_max_concurrency due to rings overlap
Date: 2026-10-26 17:14:02
Message-ID: CAB8bMiuUxkAUz-uBr=-jMdsU37YfH4mFkWsGLTionJTEgn3fkw@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

пн, 26 окт. 2026 г. в 18:31, Andres Freund <andres(at)anarazel(dot)de>:

> we could just add 64bytes to the ring sizes for those versions.

v1 built the end of the ring itself from cq_off and the SQ index array, and
increased the reservation only when that end was longer than liburing's
answer.

In v2 on liburing older than 2.7, adds 64 bytes to the answer and rounds up
to a page - the code came out more compact.

Tested 2.5/2.6/2.7 - all good.

I've taken your remarks about the LLM for the future.

Attachment Content-Type Size
v2-0001-Reserve-one-extra-page-for-packed-io_uring-rings.patch text/x-patch 4.2 KB

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Sami Imseih 2026-10-26 18:23:22 Re: pg_stat_statements replaces SQL/JSON ON EMPTY / ON ERROR keywords with parameters
Previous Message PG Bug reporting form 2026-10-26 16:58:54 BUG #19799: Self-join elimination: "failed to build any 3-way joins" with LATERAL