---
id: CVE-2026-98759
title: 'usb: typec: tipd: fix uninitialized typec_partner_desc in cd321x_update_work()'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  usb: typec: tipd: fix uninitialized typec_partner_desc in cd321x_update_work()

  cd321x_update_work() passes a stack-allocated typec_partner_desc to
  typec_register_partn…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 82432bbfb9e83b7e81d04660fe129b99a29b2ac2 <
    75dc6cb377efd2f4428b7f76d3a590a0bbc10399
  - >-
    Linux >= 82432bbfb9e83b7e81d04660fe129b99a29b2ac2 <
    5414144e202a32437e3eb436cd3f5f00d79ad86e
  - >-
    Linux >= 82432bbfb9e83b7e81d04660fe129b99a29b2ac2 <
    88c7e458af53ff781a3f1051708395892b325576
  - Linux 6.18
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:47:47.988Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98759'
references:
  - url: 'https://git.kernel.org/stable/c/75dc6cb377efd2f4428b7f76d3a590a0bbc10399'
  - url: 'https://git.kernel.org/stable/c/5414144e202a32437e3eb436cd3f5f00d79ad86e'
  - url: 'https://git.kernel.org/stable/c/88c7e458af53ff781a3f1051708395892b325576'
tags:
  - cve.org
ingestedAt: '2026-10-18T16:47:32.497Z'
---

## Overview

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

usb: typec: tipd: fix uninitialized typec_partner_desc in cd321x_update_work()

cd321x_update_work() passes a stack-allocated typec_partner_desc to
typec_register_partner() after initializing only usb_pd, accessory and
identity.

typec_register_partner() copies attach and deattach from the descriptor
into the partner. With those fields left unset, garbage function pointers
may be stored and later invoked from typec_partner_link_device() when a USB
device is linked to the port. Uninitialized pd_revision and usb_capability
similarly leak stack data through partner sysfs.

Zero-initialize the descriptor so optional callbacks remain NULL and the
remaining fields are zero.

## Affected

- `Linux >= 82432bbfb9e83b7e81d04660fe129b99a29b2ac2 < 75dc6cb377efd2f4428b7f76d3a590a0bbc10399`
- `Linux >= 82432bbfb9e83b7e81d04660fe129b99a29b2ac2 < 5414144e202a32437e3eb436cd3f5f00d79ad86e`
- `Linux >= 82432bbfb9e83b7e81d04660fe129b99a29b2ac2 < 88c7e458af53ff781a3f1051708395892b325576`
- `Linux 6.18`

## Remediation

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