CVE-2026-23253

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
18/03/2026
Last modified:
02/04/2026

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> media: dvb-core: fix wrong reinitialization of ringbuffer on reopen<br /> <br /> dvb_dvr_open() calls dvb_ringbuffer_init() when a new reader opens the<br /> DVR device. dvb_ringbuffer_init() calls init_waitqueue_head(), which<br /> reinitializes the waitqueue list head to empty.<br /> <br /> Since dmxdev-&gt;dvr_buffer.queue is a shared waitqueue (all opens of the<br /> same DVR device share it), this orphans any existing waitqueue entries<br /> from io_uring poll or epoll, leaving them with stale prev/next pointers<br /> while the list head is reset to {self, self}.<br /> <br /> The waitqueue and spinlock in dvr_buffer are already properly<br /> initialized once in dvb_dmxdev_init(). The open path only needs to<br /> reset the buffer data pointer, size, and read/write positions.<br /> <br /> Replace the dvb_ringbuffer_init() call in dvb_dvr_open() with direct<br /> assignment of data/size and a call to dvb_ringbuffer_reset(), which<br /> properly resets pread, pwrite, and error with correct memory ordering<br /> without touching the waitqueue or spinlock.