---
id: CVE-2026-98770
title: 'usb: gadget: midi2: Fix the jack descriptor array sizes'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  usb: gadget: midi2: Fix the jack descriptor array sizes

  The jack in/out descriptor arrays in struct f_midi2_usb_config have
  the size of MAX_CABLES, which look reasonab…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 856fa444b0982746f95e801bab0e586533eb29a3 <
    8294ff75a9de23f7cc641e5e5ca31fa6ea72a574
  - >-
    Linux >= 856fa444b0982746f95e801bab0e586533eb29a3 <
    87f2185423e01f113811301878f2f67eccec960d
  - >-
    Linux >= 856fa444b0982746f95e801bab0e586533eb29a3 <
    223c3bd02a582776d8ee47dae7b69d3258420694
  - >-
    Linux >= 856fa444b0982746f95e801bab0e586533eb29a3 <
    310c2d4608d8c1a2baa57db1dfd319c5c40cf4a1
  - Linux 6.6
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:48:06.586Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98770'
references:
  - url: 'https://git.kernel.org/stable/c/8294ff75a9de23f7cc641e5e5ca31fa6ea72a574'
  - url: 'https://git.kernel.org/stable/c/87f2185423e01f113811301878f2f67eccec960d'
  - url: 'https://git.kernel.org/stable/c/223c3bd02a582776d8ee47dae7b69d3258420694'
  - url: 'https://git.kernel.org/stable/c/310c2d4608d8c1a2baa57db1dfd319c5c40cf4a1'
tags:
  - cve.org
ingestedAt: '2026-10-18T16:47:32.493Z'
---

## Overview

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

usb: gadget: midi2: Fix the jack descriptor array sizes

The jack in/out descriptor arrays in struct f_midi2_usb_config have
the size of MAX_CABLES, which look reasonable -- but it turned out to
be incorrect.  Namely, the entries for those arrays are added from
both inputs and outputs, hence for each loop cycle, it adds two, ended
up with as twice as the expected size.  This inconsistency may result
in potential OOB when a large number of jacks are set up via configfs,
although the max number of cables (the loop count) is limited to
MAX_CABLES.

For addressing it, correct the jack_ins & jack_outs array sizes to
twice, MAX_CABLES * 2.

## Affected

- `Linux >= 856fa444b0982746f95e801bab0e586533eb29a3 < 8294ff75a9de23f7cc641e5e5ca31fa6ea72a574`
- `Linux >= 856fa444b0982746f95e801bab0e586533eb29a3 < 87f2185423e01f113811301878f2f67eccec960d`
- `Linux >= 856fa444b0982746f95e801bab0e586533eb29a3 < 223c3bd02a582776d8ee47dae7b69d3258420694`
- `Linux >= 856fa444b0982746f95e801bab0e586533eb29a3 < 310c2d4608d8c1a2baa57db1dfd319c5c40cf4a1`
- `Linux 6.6`

## Remediation

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