CVE-2025-39905

Aliases:UBUNTU-CVE-2025-39905DEBIAN-CVE-2025-39905CGA-23f2-5q2w-m7jfCGA-269j-f996-qhmwCGA-2h64-crcr-44qrCGA-2mg2-pj52-wgwfCGA-2vcr-m53h-8999CGA-3599-g479-hf8wCGA-3fcf-mghx-mp64CGA-3r9w-9498-2q3gCGA-44x2-9hx5-x2xqCGA-45f8-rxjf-74v5CGA-4cqp-74mq-j793CGA-4fhx-hgrj-cfc8CGA-4fqg-v668-9884CGA-4hc5-f37q-j5vpCGA-4w46-fxm5-924hCGA-54jh-66j6-x34wCGA-57jj-77g3-cqwqCGA-5cfr-6h96-58vhCGA-5pfp-q7mw-rx6vCGA-5vhw-g5xw-hpm3CGA-5wrr-42w6-w8hjCGA-63c5-jg9c-hh8xCGA-6475-jx5m-hh9rCGA-6jx7-65f8-p27jCGA-6vcg-vjjv-4gvxCGA-6xwg-xp87-8cfpCGA-73q7-97c8-2cqcCGA-75h8-w8pm-8r73CGA-79qx-x84x-vjc7CGA-7ghw-frxf-wcwgCGA-7qcj-653m-5pw3CGA-7vj4-44g6-3c9gCGA-84r7-9hpq-46xmCGA-8543-m2fm-56ppCGA-85jc-qw8f-3q6qCGA-86g3-4wr5-g28hCGA-8q9j-r8qm-224mCGA-8qx4-fc89-ccxxCGA-8w6r-xj73-h9g8CGA-9294-qp2m-wqcrCGA-9cq4-75rm-xrp6CGA-c393-5c53-c7j5CGA-c4px-j7h3-cmwfCGA-c7r2-3j79-jpx8CGA-c8j9-w7mr-xq4rCGA-c987-98qp-mjpgCGA-cgrr-995m-5848CGA-cv2w-jwvv-33c7CGA-cwcx-chjx-mhwmCGA-f498-6cmv-8pg7CGA-f734-2xjj-8277CGA-f7f9-r6x4-gmffCGA-f99v-x2cx-484hCGA-fcj9-33wq-v233CGA-fcpc-hg29-mcffCGA-fcvr-3jgc-23q3CGA-g4v6-j382-3j4fCGA-g5v3-h838-vw6wCGA-g9g6-3w3q-pc9fCGA-gcmh-4v56-973xCGA-gh5w-hfr8-778xCGA-gjqq-x994-w2h9CGA-h48x-wg3r-xgw5CGA-h72w-8whx-88pfCGA-h945-wx2m-gq9hCGA-hvj6-54wp-4xr2CGA-hxwc-739j-m725CGA-j5q9-rxqf-wgf8CGA-j7jf-m77w-frgrCGA-jfgf-8qv2-xg9gCGA-jgpg-47f5-xqj3CGA-jh9j-7f22-9f2wCGA-jvpc-p5f2-7947CGA-jw45-8gxh-8f34CGA-m3pq-3qg7-3fc4CGA-m4rr-q7xc-hcf7CGA-mpgx-x33x-9hv9CGA-mqv3-4pxj-35rwCGA-mxg5-xc9h-4626CGA-p2jm-cwh6-mvh5CGA-p483-3gg8-p5hxCGA-p7f9-q24f-x588CGA-pf99-g56v-hc79CGA-pj3j-gm3x-x75mCGA-pmfx-9cpr-f4grCGA-pvr2-c594-cpwrCGA-px6h-h889-j4x8CGA-q273-7wx3-36qqCGA-q45c-4833-g5frCGA-q9xp-jm57-vj25CGA-qf63-h84w-9f4wCGA-qjv5-jc93-vfxgCGA-qx9q-xfm3-pxx5CGA-r3p2-cqq2-5g2xCGA-rcm9-q22r-8v8cCGA-rcp9-wfx7-6vv5CGA-rh28-g2fx-9p8wCGA-v3ww-3hmq-m2gvCGA-vqph-5gwc-rjqxCGA-wgj9-95p7-28frCGA-whhp-wwgx-cm99CGA-wv3w-82qj-f2gwCGA-x5fw-92rr-9hq6CGA-x95q-qw4w-89g6CGA-xcjp-247p-g5qwCGA-xfj4-2798-xvh8CGA-xhg5-5j3p-x6q4CGA-xr3w-xqm8-cmjr
Advisory lineage Upstream: 0 Downstream: 3
Modified
Published: 01 Oct 2025, 07:44
Last modified:11 May 2026, 21:38

Vulnerability Summary

Overall Risk (default)
medium
28/100
CVSS Score
7 HIGH
v3.1 (cve.org)
EPSS Score
0.11% LOW
0% probability +0.09%
KEV
Not listed
Ransomware
No reports
Public exploits
None found
Dark Web
Not detected

Timeline

01 Oct 2025, 07:44
Published
Vulnerability first disclosed
11 May 2026, 21:38
Last Modified
Vulnerability information updated

Description

In the Linux kernel, the following vulnerability has been resolved: net: phylink: add lock for serializing concurrent pl->phydev writes with resolver Currently phylink_resolve() protects itself against concurrent phylink_bringup_phy() or phylink_disconnect_phy() calls which modify pl->phydev by relying on pl->state_mutex. The problem is that in phylink_resolve(), pl->state_mutex is in a lock inversion state with pl->phydev->lock. So pl->phydev->lock needs to be acquired prior to pl->state_mutex. But that requires dereferencing pl->phydev in the first place, and without pl->state_mutex, that is racy. Hence the reason for the extra lock. Currently it is redundant, but it will serve a functional purpose once mutex_lock(&phy->lock) will be moved outside of the mutex_lock(&pl->state_mutex) section. Another alternative considered would have been to let phylink_resolve() acquire the rtnl_mutex, which is also held when phylink_bringup_phy() and phylink_disconnect_phy() are called. But since phylink_disconnect_phy() runs under rtnl_lock(), it would deadlock with phylink_resolve() when calling flush_work(&pl->resolve). Additionally, it would have been undesirable because it would have unnecessarily blocked many other call paths as well in the entire kernel, so the smaller-scoped lock was preferred.

CVSS Metrics

  • v3.1HIGHScore: 7CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

EPSS Trends

Current EPSS score: 0.11% Percentile: 1%

Techniques & Countermeasures

  • CWE-362Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')

    The product contains a concurrent code sequence that requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence operating concurrently.

Affected Systems

  • chainguardlinux-aws-6.12

    < 6.12.62-r1 | < 6.12.71-r0 | < 6.12.77-r2 | < 6.12.67-r0 | < 6.12.77-r0 | < 6.12.68-r1 | < 6.12.65-r2 | < 6.12.65-r1 | < 6.12.80-r0 | < 6.12.65-r0 | < 6.12.72-r0 | < 6.12.77-r1 | < 6.12.68-r0 | < 6.12.70-r0 | < 6.12.78-r0 | < 6.12.63-r0 | < 6.12.74-r1 | < 6.12.69-r0 | < 6.12.62-r2 | < 6.12.72-r1 | < 6.12.76-r0 | < 6.12.66-r0 | < 6.12.74-r0

  • chainguardlinux-azure-6.12

    < 6.12.68-r0 | < 6.12.65-r1 | < 6.12.69-r0 | < 6.12.65-r4 | < 6.12.65-r3 | < 6.12.74-r1 | < 6.12.62-r1 | < 6.12.67-r0 | < 6.12.76-r0 | < 6.12.70-r0 | < 6.12.74-r0 | < 6.12.66-r0 | < 6.12.62-r2 | < 6.12.77-r0 | < 6.12.72-r0 | < 6.12.77-r1 | < 6.12.77-r2 | < 6.12.65-r2 | < 6.12.78-r0 | < 6.12.63-r0 | < 6.12.71-r0 | < 6.12.80-r0

  • chainguardlinux-gcp-6.12

    < 6.12.70-r0 | < 6.12.66-r0 | < 6.12.74-r1 | < 6.12.69-r0 | < 6.12.76-r0 | < 6.12.68-r1 | < 6.12.62-r0 | < 6.12.65-r1 | < 6.12.62-r2 | < 6.12.78-r0 | < 6.12.62-r1 | < 6.12.74-r0 | < 6.12.63-r0 | < 6.12.77-r0 | < 6.12.72-r0 | < 6.12.65-r2 | < 6.12.65-r0 | < 6.12.80-r0 | < 6.12.67-r0 | < 6.12.68-r0 | < 6.12.71-r0 | < 6.12.77-r2 | < 6.12.77-r1

  • chainguardlinux-qemu-6.12

    < 6.12.65-r2 | < 6.12.74-r1 | < 6.12.68-r0 | < 6.12.77-r1 | < 6.12.78-r0 | < 6.12.74-r0 | < 6.12.71-r0 | < 6.12.77-r2 | < 6.12.80-r0 | < 6.12.72-r0 | < 6.12.65-r1 | < 6.12.67-r0 | < 6.12.77-r0 | < 6.12.66-r0 | < 6.12.76-r0 | < 6.12.69-r0 | < 6.12.70-r0

  • chainguardlinux-vmware-6.12

    < 6.12.78-r0 | < 6.12.74-r1 | < 6.12.66-r0 | < 6.12.65-r1 | < 6.12.65-r2 | < 6.12.77-r1 | < 6.12.69-r0 | < 6.12.70-r0 | < 6.12.77-r2 | < 6.12.80-r0 | < 6.12.68-r1 | < 6.12.72-r0 | < 6.12.71-r0 | < 6.12.67-r0 | < 6.12.74-r0 | < 6.12.68-r0 | < 6.12.77-r0 | < 6.12.76-r0

  • debianlinux

    < 6.16.8-1

  • ubuntulinux

    all | all | all

  • ubuntulinux-allwinner-5.19

    all

  • ubuntulinux-aws

    all | all | all

  • ubuntulinux-aws-5.0

    all

  • ubuntulinux-aws-5.11

    all

  • ubuntulinux-aws-5.13

    all

  • ubuntulinux-aws-5.15

    all

  • ubuntulinux-aws-5.19

    all

  • ubuntulinux-aws-5.3

    all

  • ubuntulinux-aws-5.4

    all

  • ubuntulinux-aws-5.8

    all

  • ubuntulinux-aws-6.14

    all

  • ubuntulinux-aws-6.2

    all

  • ubuntulinux-aws-6.5

    all

  • ubuntulinux-aws-6.8

    all

  • ubuntulinux-aws-fips

    all

  • ubuntulinux-aws-hwe

    all

  • ubuntulinux-azure

    all | all | all | all

  • ubuntulinux-azure-4.15

    all

  • ubuntulinux-azure-5.11

    all

  • ubuntulinux-azure-5.13

    all

  • ubuntulinux-azure-5.15

    all

  • ubuntulinux-azure-5.19

    all

  • ubuntulinux-azure-5.3

    all

  • ubuntulinux-azure-5.4

    all

  • ubuntulinux-azure-5.8

    all

  • ubuntulinux-azure-6.11

    all

  • ubuntulinux-azure-6.14

    all

  • ubuntulinux-azure-6.2

    all

  • ubuntulinux-azure-6.5

    all

  • ubuntulinux-azure-6.8

    all

  • ubuntulinux-azure-edge

    all

  • ubuntulinux-azure-fde

    all | all | all | all

  • ubuntulinux-azure-fde-5.15

    all

  • ubuntulinux-azure-fde-5.19

    all

  • ubuntulinux-azure-fde-6.14

    all

  • ubuntulinux-azure-fde-6.17

    all

  • ubuntulinux-azure-fde-6.2

    all

  • ubuntulinux-azure-fde-6.8

    all

  • ubuntulinux-azure-fips

    all

  • ubuntulinux-azure-nvidia

    all

  • ubuntulinux-azure-nvidia-6.14

    all

  • ubuntulinux-bluefield

    all | all

  • ubuntulinux-fips

    all

Showing first 50 affected entries in server-rendered view.

References (9)