CVE-2026-31585: media: vidtv: fix nfeeds state corruption on start_streaming failure
In the Linux kernel, the following vulnerability has been resolved:
media: vidtv: fix nfeeds state corruption on startstreaming failure
syzbot reported a memory leak in vidtvpsiservicedescinit [1].
When vidtvstartstreaming() fails inside vidtvstartfeed(), the nfeeds counter is left incremented even though no feed was actually started. This corrupts the driver state: subsequent startfeed calls see nfeeds > 1 and skip starting the mux, while stopfeed calls eventually try to stop a non-existent stream.
This state corruption can also lead to memory leaks, since the mux and channel resources may be partially allocated during a failed startstreaming but never cleaned up, as the stop path finds dvb->streaming == false and returns early.
Fix by decrementing nfeeds back when startstreaming fails, keeping the counter in sync with the actual number of active feeds.
[1] BUG: memory leak unreferenced object 0xffff888145b50820 (size 32): comm "syz.0.17", pid 6068, jiffies 4294944486 backtrace (crc 90a0c7d4): vidtvpsiservicedescinit+0x74/0x1b0 drivers/media/test-drivers/vidtv/vidtvpsi.c:288 vidtvchannels302minit+0xb1/0x2a0 drivers/media/test-drivers/vidtv/vidtvchannel.c:83 vidtvchannelsinit+0x1b/0x40 drivers/media/test-drivers/vidtv/vidtvchannel.c:524 vidtvmuxinit+0x516/0xbe0 drivers/media/test-drivers/vidtv/vidtvmux.c:518 vidtvstartstreaming drivers/media/test-drivers/vidtv/vidtvbridge.c:194 [inline] vidtvstartfeed+0x33e/0x4d0 drivers/media/test-drivers/vidtv/vidtvbridge.c:239
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 6.6.137.1-1 - Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 6.1.176-1Fixed in 6.1.190-1Fixed in 6.12.107-1Fixed in 6.12.115-2Fixed in 7.2.12-1Fixed in 7.2.15-1 - Compensating control
In vidtv_start_feed(), decrement the nfeeds counter when vidtv_start_streaming() fails, keeping nfeeds synchronized with the actual number of active feeds.
Event History
Frequently Asked Questions
What is the severity of CVE-2026-31585?
CVE-2026-31585 is classified as a medium severity vulnerability due to potential memory leaks affecting the Linux kernel vidtv driver.
How do I fix CVE-2026-31585?
To fix CVE-2026-31585, update to the latest version of the Linux kernel that includes the patch addressing this vulnerability.
What impact does CVE-2026-31585 have on systems?
CVE-2026-31585 can lead to memory corruption which may result in system instability and potential denial of service.
Which software is affected by CVE-2026-31585?
CVE-2026-31585 affects systems using the Linux kernel vidtv driver.
Who reported CVE-2026-31585?
CVE-2026-31585 was reported by syzbot, which highlighted memory leak issues in the vidtv_psi_service_desc_init function.