CVE-2026-31585

media: vidtv: fix nfeeds state corruption on start_streaming failure

State
Published
Severity
Not scored
Published
Apr 24, 2026
Updated
Jun 14, 2026
Reserved
Mar 9, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

media: vidtv: fix nfeeds state corruption on start_streaming failure

syzbot reported a memory leak in vidtv_psi_service_desc_init [1].

When vidtv_start_streaming() fails inside vidtv_start_feed(), the nfeeds counter is left incremented even though no feed was actually started. This corrupts the driver state: subsequent start_feed calls see nfeeds > 1 and skip starting the mux, while stop_feed 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 start_streaming but never cleaned up, as the stop path finds dvb->streaming == false and returns early.

Fix by decrementing nfeeds back when start_streaming 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): vidtv_psi_service_desc_init+0x74/0x1b0 drivers/media/test-drivers/vidtv/vidtv_psi.c:288 vidtv_channel_s302m_init+0xb1/0x2a0 drivers/media/test-drivers/vidtv/vidtv_channel.c:83 vidtv_channels_init+0x1b/0x40 drivers/media/test-drivers/vidtv/vidtv_channel.c:524 vidtv_mux_init+0x516/0xbe0 drivers/media/test-drivers/vidtv/vidtv_mux.c:518 vidtv_start_streaming drivers/media/test-drivers/vidtv/vidtv_bridge.c:194 [inline] vidtv_start_feed+0x33e/0x4d0 drivers/media/test-drivers/vidtv/vidtv_bridge.c:239

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before f8cccb427e65d725fc0ba05e8900b4676eda268eAffected
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before 60f768d46df561e06d92ffcacc00909f37a0f23dAffected
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before 80900b5424f3454256153ce386388df43b324f63Affected
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before 17cb7957c979529cc98ff57f7ac331532f1f7c83Affected
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before 98c22210aeadce67d9d20059f0dbbd01ba7fdbbaAffected
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before 25f19e476ab15defe698504212899fdb9f7cd61bAffected
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before 83110c2c8c46c035c2e0fc8ff3e4991183bf9ccdAffected
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before 4bf95f797edd63c93330eafb6d6e670982344b9bAffected
  • f90cf6079bf67988f8b1ad1ade70fc89d0080905 to before a0e5a598fe9a4612b852406b51153b881592aedeAffected
LinuxLinux
  • 5.10Affected
  • before 5.10Not affected
  • 5.10.258 through 5.10.*Not affected
  • 5.15.209 through 5.15.*Not affected
  • 6.1.175 through 6.1.*Not affected
  • 6.6.136 through 6.6.*Not affected
  • 6.12.83 through 6.12.*Not affected
  • 6.18.24 through 6.18.*Not affected
  • 6.19.14 through 6.19.*Not affected
  • 7.0.1 through 7.0.*Not affected
  • 7.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.