---
id: CVE-2026-89871
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  media: video-i2c: fix kthread error pointer left in kthread_vid_cap on failure

  kthread_run() returns an ERR_PTR on failure, not NULL.
  When start_streaming() fails, dat…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  media: video-i2c: fix kthread error pointer left in kthread_vid_cap on failure

  kthread_run() returns an ERR_PTR on failure, not NULL.
  When start_streaming() fails, dat…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 5cebaac609744414463d1ecc28fdecd26c1b9bc1 <
    db0f4531aa55cfb0171684ebfffe3ff04b79d5a8
  - >-
    Linux >= 5cebaac609744414463d1ecc28fdecd26c1b9bc1 <
    0fac63cac6689588da530764ccb6ba55ee8e4d8b
  - >-
    Linux >= 5cebaac609744414463d1ecc28fdecd26c1b9bc1 <
    5c35d380bea60503c4fe0986fe1de6a3263282b3
  - >-
    Linux >= 5cebaac609744414463d1ecc28fdecd26c1b9bc1 <
    3d1b10d81fe54852ed953f4129577b733bbd6907
  - >-
    Linux >= 5cebaac609744414463d1ecc28fdecd26c1b9bc1 <
    968c5213e34c48d35febdfd09cf3dc58ad039140
  - >-
    Linux >= 5cebaac609744414463d1ecc28fdecd26c1b9bc1 <
    52fd9d80c0cea7bf09e7ee36cad316e5c39b7fe6
  - >-
    Linux >= 5cebaac609744414463d1ecc28fdecd26c1b9bc1 <
    0e7f2cd72a4f9268ee09a13b13f3339e7cc71557
  - >-
    Linux >= 5cebaac609744414463d1ecc28fdecd26c1b9bc1 <
    76e379754ba618989f6215be608d5c04774a611d
  - Linux 4.18
published: '2026-09-16'
updated: '2026-09-16'
sourceUpdated: '2026-09-16T11:16:55.287'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-89871'
references:
  - url: 'https://git.kernel.org/stable/c/0e7f2cd72a4f9268ee09a13b13f3339e7cc71557'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/0fac63cac6689588da530764ccb6ba55ee8e4d8b'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/3d1b10d81fe54852ed953f4129577b733bbd6907'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/52fd9d80c0cea7bf09e7ee36cad316e5c39b7fe6'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/5c35d380bea60503c4fe0986fe1de6a3263282b3'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/76e379754ba618989f6215be608d5c04774a611d'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/968c5213e34c48d35febdfd09cf3dc58ad039140'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/db0f4531aa55cfb0171684ebfffe3ff04b79d5a8'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
ingestedAt: '2026-09-16T10:53:53.987Z'
epss: 0.00211
epssPercentile: 0.10035
---

## Overview

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

media: video-i2c: fix kthread error pointer left in kthread_vid_cap on failure

kthread_run() returns an ERR_PTR on failure, not NULL.
When start_streaming() fails, data->kthread_vid_cap is left holding
this error pointer instead of being cleared.

This causes two subsequent bugs:
1. A future call to start_streaming() sees a non-NULL kthread_vid_cap
   and returns 0 (success) immediately, without actually starting the
   capture thread.
2. A call to stop_streaming() checks 'kthread_vid_cap == NULL' which
   is false for an error pointer, and proceeds to call kthread_stop()
   on the error pointer, leading to a kernel crash.

Fix this by resetting kthread_vid_cap to NULL on failure before
jumping to the error path.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
