Bug 2513416 (CVE-2026-68203) - CVE-2026-68203 kernel: media: vivid: fix cleanup bugs in vivid_init()
Summary: CVE-2026-68203 kernel: media: vivid: fix cleanup bugs in vivid_init()
Keywords:
Status: NEW
Alias: CVE-2026-68203
Product: Security Response
Classification: Other
Component: vulnerability-draft
Version: unspecified
Hardware: All
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Product Security
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-08-10 12:36 UTC by OSIDB Bzimport
Modified: 2026-08-11 16:25 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-08-10 12:36:07 UTC
In the Linux kernel, the following vulnerability has been resolved:

media: vivid: fix cleanup bugs in vivid_init()

When platform_device_register() fails in vivid_init(), the embedded
struct device in vivid_pdev has already been initialized by
device_initialize(), but the failure path jumps to free_output_strings
without dropping the device reference for the current platform device:

  vivid_init()
    -> platform_device_register(&vivid_pdev)
       -> device_initialize(&vivid_pdev.dev)
       -> setup_pdev_dma_masks(&vivid_pdev)
       -> platform_device_add(&vivid_pdev)

This leads to a reference leak when platform_device_register() fails.
Fix this by calling platform_device_put() before jumping to the common
cleanup path.

Also, the unreg_driver label incorrectly calls
platform_driver_register() instead of platform_driver_unregister(),
which breaks cleanup when workqueue creation fails after successful
driver registration. Fix that as well.

The reference leak was identified by a static analysis tool I developed
and confirmed by manual review. The incorrect cleanup call was found
during code inspection.

Comment 1 Mauro Matteo Cascella 2026-08-11 14:27:18 UTC
Upstream advisory:
https://lore.kernel.org/linux-cve-announce/2026081011-CVE-2026-68203-0103@gregkh/T


Note You need to log in before you can comment on or make changes to this bug.