---
id: CVE-2026-98795
title: 'net: sparx5: skip ptp deinit if init was skipped'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  net: sparx5: skip ptp deinit if init was skipped

  sparx5_ptp_init() returns early on the base lan969x variants
  because they do not have the SPX5_FEATURE_PTP flag. It al…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 0933bd04047c3b96ba49545a8f91e7e6f8f666ff <
    35c706d6eb1963735814c5f5bb2674a96eacf3cc
  - >-
    Linux >= 0933bd04047c3b96ba49545a8f91e7e6f8f666ff <
    2879b65bfa548e10d59c5fba91d17f8a00cd7029
  - >-
    Linux >= 0933bd04047c3b96ba49545a8f91e7e6f8f666ff <
    0d2c49915bc3aea4521cda5e4d42f24f63b94585
  - Linux 5.18
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:48:39.633Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98795'
references:
  - url: 'https://git.kernel.org/stable/c/35c706d6eb1963735814c5f5bb2674a96eacf3cc'
  - url: 'https://git.kernel.org/stable/c/2879b65bfa548e10d59c5fba91d17f8a00cd7029'
  - url: 'https://git.kernel.org/stable/c/0d2c49915bc3aea4521cda5e4d42f24f63b94585'
tags:
  - cve.org
ingestedAt: '2026-10-18T16:47:32.484Z'
---

## Overview

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

net: sparx5: skip ptp deinit if init was skipped

sparx5_ptp_init() returns early on the base lan969x variants
because they do not have the SPX5_FEATURE_PTP flag. It also returns early
when no "ptp" interrupt is described. Unbinding the driver then causes a
NULL pointer dereference when cleaning up uninitialized tx_skbs queues:

    Unable to handle kernel NULL pointer dereference at virtual address
    0000000000000008
    Call trace:
    skb_queue_purge_reason+0x68/0x120 (P)
    sparx5_ptp_deinit+0x64/0xc0
    mchp_sparx5_remove+0x38/0x70
    platform_remove+0x20/0x30
    device_remove+0x4c/0x80

Before per-port tx_skbs were added, a NULL dereference would have happened
when calling ptp_clock_unregister() on the never-registered PTP clocks.

Fix by returning early in sparx5_ptp_deinit() if PTP is not used.

## Affected

- `Linux >= 0933bd04047c3b96ba49545a8f91e7e6f8f666ff < 35c706d6eb1963735814c5f5bb2674a96eacf3cc`
- `Linux >= 0933bd04047c3b96ba49545a8f91e7e6f8f666ff < 2879b65bfa548e10d59c5fba91d17f8a00cd7029`
- `Linux >= 0933bd04047c3b96ba49545a8f91e7e6f8f666ff < 0d2c49915bc3aea4521cda5e4d42f24f63b94585`
- `Linux 5.18`

## Remediation

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