Home

Description

In the Linux kernel, the following vulnerability has been resolved: media: tuner: xc5000: Fix use-after-free in xc5000_release The original code uses cancel_delayed_work() in xc5000_release(), which does not guarantee that the delayed work item timer_sleep has fully completed if it was already running. This leads to use-after-free scenarios where xc5000_release() may free the xc5000_priv while timer_sleep is still active and attempts to dereference the xc5000_priv. A typical race condition is illustrated below: CPU 0 (release thread) | CPU 1 (delayed work callback) xc5000_release() | xc5000_do_timer_sleep() cancel_delayed_work() | hybrid_tuner_release_state(priv) | kfree(priv) | | priv = container_of() // UAF Replace cancel_delayed_work() with cancel_delayed_work_sync() to ensure that the timer_sleep is properly canceled before the xc5000_priv memory is deallocated. A deadlock concern was considered: xc5000_release() is called in a process context and is not holding any locks that the timer_sleep work item might also need. Therefore, the use of the _sync() variant is safe here. This bug was initially identified through static analysis. [hverkuil: fix typo in Subject: tunner -> tuner]

PUBLISHED Reserved 2025-04-16 | Published 2025-10-15 | Updated 2025-10-19 | Assigner Linux

Product status

Default status
unaffected

f7a27ff1fb77e114d1059a5eb2ed1cffdc508ce8 before 3f876cd47ed8bca1e28d68435845949f51f90703
affected

f7a27ff1fb77e114d1059a5eb2ed1cffdc508ce8 before df0303b4839520b84d9367c2fad65b13650a4d42
affected

f7a27ff1fb77e114d1059a5eb2ed1cffdc508ce8 before 71ed8b81a4906cb785966910f39cf7f5ad60a69e
affected

f7a27ff1fb77e114d1059a5eb2ed1cffdc508ce8 before effb1c19583bca7022fa641a70766de45c6d41ac
affected

f7a27ff1fb77e114d1059a5eb2ed1cffdc508ce8 before 9a00de20ed8ba90888479749b87bc1532cded4ce
affected

f7a27ff1fb77e114d1059a5eb2ed1cffdc508ce8 before 4266f012806fc18e46da4a04d130df59a4946f93
affected

f7a27ff1fb77e114d1059a5eb2ed1cffdc508ce8 before 40b7a19f321e65789612ebaca966472055dab48c
affected

Default status
affected

3.16
affected

Any version before 3.16
unaffected

5.15.195
unaffected

6.1.156
unaffected

6.6.111
unaffected

6.12.51
unaffected

6.16.11
unaffected

6.17.1
unaffected

6.18-rc1
unaffected

References

git.kernel.org/...c/3f876cd47ed8bca1e28d68435845949f51f90703

git.kernel.org/...c/df0303b4839520b84d9367c2fad65b13650a4d42

git.kernel.org/...c/71ed8b81a4906cb785966910f39cf7f5ad60a69e

git.kernel.org/...c/effb1c19583bca7022fa641a70766de45c6d41ac

git.kernel.org/...c/9a00de20ed8ba90888479749b87bc1532cded4ce

git.kernel.org/...c/4266f012806fc18e46da4a04d130df59a4946f93

git.kernel.org/...c/40b7a19f321e65789612ebaca966472055dab48c

cve.org (CVE-2025-39994)

nvd.nist.gov (CVE-2025-39994)

Download JSON