CVE-2025-37875 in Linuxinfo

Summary

by MITRE • 05/09/2025

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

igc: fix PTM cycle trigger logic

Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status after each PTM transaction.

The issue can be reproduced with the following:

$ sudo phc2sys -R 1000 -O 0 -i tsn0 -m

Note: 1000 Hz (-R 1000) is unrealistically large, but provides a way to quickly reproduce the issue.

PHC2SYS exits with:

"ioctl PTP_OFFSET_PRECISE: Connection timed out" when the PTM transaction fails

This patch also fixes a hang in igc_probe() when loading the igc driver in the kdump kernel on systems supporting PTM.

The igc driver running in the base kernel enables PTM trigger in igc_probe(). Therefore the driver is always in PTM trigger mode, except in brief periods when manually triggering a PTM cycle.

When a crash occurs, the NIC is reset while PTM trigger is enabled. Due to a hardware problem, the NIC is subsequently in a bad busmaster state and doesn't handle register reads/writes. When running igc_probe() in the kdump kernel, the first register access to a NIC register hangs driver probing and ultimately breaks kdump.

With this patch, igc has PTM trigger disabled most of the time, and the trigger is only enabled for very brief (10 - 100 us) periods when manually triggering a PTM cycle. Chances that a crash occurs during a PTM trigger are not 0, but extremely reduced.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Analysis

by VulDB Data Team • 01/31/2026

The vulnerability CVE-2025-37875 addresses a critical timing and state management issue within the Intel Gigabit Ethernet (igc) driver in the Linux kernel, specifically affecting Precision Time Monitoring (PTM) functionality. This flaw manifests in the improper handling of PTM cycle triggers and status bit management, creating a scenario where concurrent operations can lead to unpredictable behavior and system instability. The vulnerability stems from the driver's failure to properly sequence the clearing of PTM status bits and trigger mechanisms during active PTM operations, which directly impacts time-sensitive network operations and system reliability.

The technical implementation flaw occurs when the driver attempts to clear the PTM status 'valid' bit while a PTM cycle is actively in progress. This race condition results in unreliable PTM operation and can cause the phc2sys utility to fail with "ioctl PTP_OFFSET_PRECISE: Connection timed out" errors. The issue is particularly pronounced under high-frequency conditions, as demonstrated by the reproduction case using phc2sys with a 1000 Hz sampling rate, which exaggerates the timing inconsistencies. The problem is rooted in the driver's initialization process where PTM trigger functionality is enabled by default during igc_probe() execution, creating a persistent state that conflicts with proper hardware operation during system crashes or kdump scenarios. This vulnerability aligns with CWE-362, which describes concurrent execution issues and race conditions in software systems.

The operational impact of this vulnerability extends beyond simple functionality degradation to potentially catastrophic system failures, particularly in embedded systems or real-time environments where precise timing is critical. The issue affects both normal operation and crash recovery scenarios, as the driver's behavior during kdump kernel loading becomes problematic when the NIC is in a bad busmaster state following a system crash. The hardware-specific nature of this issue means that systems supporting PTM functionality are at risk, particularly those relying on the igc driver for network operations. The vulnerability affects system availability and reliability, as the driver probing process can hang indefinitely, preventing proper system recovery and potentially leading to complete system lockups. This represents a significant concern for industrial control systems, telecommunications infrastructure, and any environment where reliable network timing is essential. The ATT&CK framework categorizes this as a system compromise through driver manipulation, as the vulnerability allows for extended system instability and potential denial of service conditions.

Mitigation strategies for this vulnerability require immediate driver updates that implement proper PTM cycle trigger logic and state management. The patched implementation ensures that PTM trigger functionality is disabled most of the time and only enabled for extremely brief periods during manual PTM cycle triggering, reducing the probability of system crashes during critical timing operations to nearly negligible levels. System administrators should prioritize updating the igc driver to versions containing this fix, particularly in environments where precise timing is required or where kdump functionality is critical for system recovery. The fix also includes enhanced error handling during driver initialization to prevent hangs during kdump scenarios, which addresses both the immediate PTM reliability issue and the broader system stability concern. Organizations should also implement monitoring for PTM-related errors and consider implementing additional safeguards in systems where PTM functionality is actively used to prevent cascading failures that could result from the timing inconsistencies described in this vulnerability.

Responsible

Linux

Reservation

04/16/2025

Disclosure

05/09/2025

Moderation

accepted

CPE

ready

EPSS

0.00225

KEV

no

Activities

very low

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!