CVE-2025-38126

net: stmmac: make sure that ptp_rate is not 0 before configuring timestamping

published July 3, 2025

CVSS
—
EPSS
0%
Percentile
8.5
In the wild
Unconfirmed
What it is

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

net: stmmac: make sure that ptp_rate is not 0 before configuring timestamping

The stmmac platform drivers that do not open-code the clk_ptp_rate value

after having retrieved the default one from the device-tree can end up

with 0 in clk_ptp_rate (as clk_get_rate can return 0). It will

eventually propagate up to PTP initialization when bringing up the

interface, leading to a divide by 0:

Division by zero in kernel.

CPU: 1 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.30-00001-g48313bd5768a #22

Hardware name: STM32 (Device Tree Support)

Call trace:

unwind_backtrace from show_stack+0x18/0x1c

show_stack from dump_stack_lvl+0x6c/0x8c

dump_stack_lvl from Ldiv0_64+0x8/0x18

Ldiv0_64 from stmmac_init_tstamp_counter+0x190/0x1a4

stmmac_init_tstamp_counter from stmmac_hw_setup+0xc1c/0x111c

stmmac_hw_setup from __stmmac_open+0x18c/0x434

__stmmac_open from stmmac_open+0x3c/0xbc

stmmac_open from __dev_open+0xf4/0x1ac

__dev_open from __dev_change_flags+0x1cc/0x224

__dev_change_flags from dev_change_flags+0x24/0x60

dev_change_flags from ip_auto_config+0x2e8/0x11a0

ip_auto_config from do_one_initcall+0x84/0x33c

do_one_initcall from kernel_init_freeable+0x1b8/0x214

kernel_init_freeable from kernel_init+0x24/0x140

kernel_init from ret_from_fork+0x14/0x28

Exception stack(0xe0815fb0 to 0xe0815ff8)

Prevent this division by 0 by adding an explicit check and error log

about the actual issue. While at it, remove the same check from

stmmac_ptp_register, which then becomes duplicate

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00193 · 8.5th percentile
Published
2025-07-03T08:35Z
EPSS history
Timeline
  • 03 JUL 08:35Z
    net: stmmac: make sure that ptp_rate is not 0 before configuring timestamping
    cvelistv5