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

  net: openvswitch: Fix the dead loop of MPLS parse

  The unexpected MPLS packet may not end with the bottom label stack.
  When there are many stacks, The label count value…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  net: openvswitch: Fix the dead loop of MPLS parse

  The unexpected MPLS packet may not end with the bottom label stack.
  When there are many stacks, The label count value…
severity: critical
cvss: 9.4
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:H'
cwe:
  - CWE-129
vendor: linux
product: linux_kernel
affected:
  - 'linux_kernel >= 5.5, < 5.10.239'
  - 'linux_kernel >= 5.11, < 5.15.186'
  - 'linux_kernel >= 5.16, < 6.1.142'
  - 'linux_kernel >= 6.2, < 6.6.94'
  - 'linux_kernel >= 6.7, < 6.12.34'
  - 'linux_kernel >= 6.13, < 6.15.3'
  - debian_linux = 11.0
patched:
  - linux_kernel 6.15.3
published: '2025-07-03'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T22:18:28.953'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-38146'
references:
  - url: 'https://git.kernel.org/stable/c/0bdc924bfb319fb10d1113cbf091fc26fb7b1f99'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/3c1906a3d50cb94fd0a10e97a1c0a40c0f033cb7'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/4b9a086eedc1fddae632310386098c12155e3d0a'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/69541e58323ec3e3904e1fa87a6213961b1f52f4'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/8ebcd311b4866ab911d1445ead08690e67f0c488'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/ad17eb86d042d72a59fd184ad1adf34f5eb36843'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/f26fe7c3002516dd3c288f1012786df31f4d89e0'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
  - cve.org
epss: 0.00477
epssPercentile: 0.4101
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-10-15T21:47:51.206324Z'
ingestedAt: '2026-10-15T22:48:25.495Z'
---

## Overview

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

net: openvswitch: Fix the dead loop of MPLS parse

The unexpected MPLS packet may not end with the bottom label stack.
When there are many stacks, The label count value has wrapped around.
A dead loop occurs, soft lockup/CPU stuck finally.

stack backtrace:
UBSAN: array-index-out-of-bounds in /build/linux-0Pa0xK/linux-5.15.0/net/openvswitch/flow.c:662:26
index -1 is out of range for type '__be32 [3]'
CPU: 34 PID: 0 Comm: swapper/34 Kdump: loaded Tainted: G           OE   5.15.0-121-generic #131-Ubuntu
Hardware name: Dell Inc. PowerEdge C6420/0JP9TF, BIOS 2.12.2 07/14/2021
Call Trace:
 <IRQ>
 show_stack+0x52/0x5c
 dump_stack_lvl+0x4a/0x63
 dump_stack+0x10/0x16
 ubsan_epilogue+0x9/0x36
 __ubsan_handle_out_of_bounds.cold+0x44/0x49
 key_extract_l3l4+0x82a/0x840 [openvswitch]
 ? kfree_skbmem+0x52/0xa0
 key_extract+0x9c/0x2b0 [openvswitch]
 ovs_flow_key_extract+0x124/0x350 [openvswitch]
 ovs_vport_receive+0x61/0xd0 [openvswitch]
 ? kernel_init_free_pages.part.0+0x4a/0x70
 ? get_page_from_freelist+0x353/0x540
 netdev_port_receive+0xc4/0x180 [openvswitch]
 ? netdev_port_receive+0x180/0x180 [openvswitch]
 netdev_frame_hook+0x1f/0x40 [openvswitch]
 __netif_receive_skb_core.constprop.0+0x23a/0xf00
 __netif_receive_skb_list_core+0xfa/0x240
 netif_receive_skb_list_internal+0x18e/0x2a0
 napi_complete_done+0x7a/0x1c0
 bnxt_poll+0x155/0x1c0 [bnxt_en]
 __napi_poll+0x30/0x180
 net_rx_action+0x126/0x280
 ? bnxt_msix+0x67/0x80 [bnxt_en]
 handle_softirqs+0xda/0x2d0
 irq_exit_rcu+0x96/0xc0
 common_interrupt+0x8e/0xa0
 </IRQ>

## Affected

- `linux_kernel >= 5.5, < 5.10.239`
- `linux_kernel >= 5.11, < 5.15.186`
- `linux_kernel >= 5.16, < 6.1.142`
- `linux_kernel >= 6.2, < 6.6.94`
- `linux_kernel >= 6.7, < 6.12.34`
- `linux_kernel >= 6.13, < 6.15.3`
- `debian_linux = 11.0`

## Remediation

Upgrade past the affected range:

- `linux_kernel 6.15.3`
