CyberAlerts is shutting down on June 30th, 2025. Thank you for your support!

CVE-2025-37907: accel/ivpu: Fix locking order in ivpu_job_submit

Description

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

accel/ivpu: Fix locking order in ivpu_job_submit

Fix deadlock in job submission and abort handling.
When a thread aborts currently executing jobs due to a fault,
it first locks the global lock protecting submitted_jobs (#1).

After the last job is destroyed, it proceeds to release the related context
and locks file_priv (#2). Meanwhile, in the job submission thread,
the file_priv lock (#2) is taken first, and then the submitted_jobs
lock (#1) is obtained when a job is added to the submitted jobs list.

CPU0 CPU1
---- ----
(for example due to a fault) (jobs submissions keep coming)

lock(&vdev->submitted_jobs_lock) #1
ivpu_jobs_abort_all()
job_destroy()
lock(&file_priv->lock) #2
lock(&vdev->submitted_jobs_lock) #1
file_priv_release()
lock(&vdev->context_list_lock)
lock(&file_priv->lock) #2

This order of locking causes a deadlock. To resolve this issue,
change the order of locking in ivpu_job_submit().

Classification

CVE ID: CVE-2025-37907

Affected Products

Vendor: Linux

Product: Linux

Exploit Prediction Scoring System (EPSS)

EPSS Score: 0.02% (probability of being exploited)

EPSS Percentile: 4.26% (scored less or equal to compared to others)

EPSS Date: 2025-06-18 (when was this score calculated)

References

https://nvd.nist.gov/vuln/detail/CVE-2025-37907
https://git.kernel.org/stable/c/079d2622f8c9e0c380149645fff21d35c59ce6ff
https://git.kernel.org/stable/c/b9b70924a272c2d72023306bc56f521c056212ee
https://git.kernel.org/stable/c/ab680dc6c78aa035e944ecc8c48a1caab9f39924

Timeline