FlawAtlas
Search the atlas
CVE-2025-71149 Not scored

io_uring/poll: correctly handle io_poll_add() return value on update

In the Linux kernel, the following vulnerability has been resolved: io_uring/poll: correctly handle io_poll_add() return value on update When the core of io_uring was updated to handle completions consistently and with fixed return codes, the POLL_REMOVE opcode with updates got slightly broken. If a POLL_ADD is pending and then POLL_REMOVE is used to update the events of that request, if that update causes the POLL_ADD to now trigger, then that completion is lost and a CQE is never posted. Additionally, ensure that if an update does cause an existing POLL_ADD to complete, that the completion value isn't always overwritten with -ECANCELED. For that case, whatever io_poll_add() set the value to should just be retained.

Exploit probability Not scored
Published January 23, 2026
Required by Not available
Last source change July 9, 2026

02 / AFFECTED SOFTWARE

Affected packages

Unknown Unknown

03 / CONNECTIONS

Connected vulnerabilities

related OPENSUSE-SU-2026:20287-1
related SUSE-SU-2026:0447-1
related SUSE-SU-2026:0472-1
related SUSE-SU-2026:0587-1
related SUSE-SU-2026:20477-1
related SUSE-SU-2026:20498-1
related SUSE-SU-2026:20555-1
related SUSE-SU-2026:20599-1
related SUSE-SU-2026:20615-1
related SUSE-SU-2026:20845-1
related SUSE-SU-2026:20876-1

04 / EVIDENCE

Source records

Open Source Vulnerabilities CVE-2025-71149

In the Linux kernel, the following vulnerability has been resolved: io_uring/poll: correctly handle io_poll_add() return value on update When the core of io_uring was updated to handle completions consistently and with fixed return codes, the POLL_REMOVE opcode with updates got slightly broken. If a POLL_ADD is pending and then POLL_REMOVE is used to update the events of that request, if that update causes the POLL_ADD to now trigger, then that completion is lost and a CQE is never posted. Additionally, ensure that if an update does cause an existing POLL_ADD to complete, that the completion value isn't always overwritten with -ECANCELED. For that case, whatever io_poll_add() set the value to should just be retained.

View original source

05 / REFERENCES

Further evidence