CVE-2022-49841

serial: imx: Add missing .thaw_noirq hook

State
Published
Severity
Not scored
Published
May 1, 2025
Updated
May 11, 2026
Reserved
May 1, 2025

Read the record on cve.org

Description

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

serial: imx: Add missing .thaw_noirq hook

The following warning is seen with non-console UART instance when system hibernates.

[ 37.371969] ------------[ cut here ]------------ [ 37.376599] uart3_root_clk already disabled [ 37.380810] WARNING: CPU: 0 PID: 296 at drivers/clk/clk.c:952 clk_core_disable+0xa4/0xb0 ... [ 37.506986] Call trace: [ 37.509432] clk_core_disable+0xa4/0xb0 [ 37.513270] clk_disable+0x34/0x50 [ 37.516672] imx_uart_thaw+0x38/0x5c [ 37.520250] platform_pm_thaw+0x30/0x6c [ 37.524089] dpm_run_callback.constprop.0+0x3c/0xd4 [ 37.528972] device_resume+0x7c/0x160 [ 37.532633] dpm_resume+0xe8/0x230 [ 37.536036] hibernation_snapshot+0x288/0x430 [ 37.540397] hibernate+0x10c/0x2e0 [ 37.543798] state_store+0xc4/0xd0 [ 37.547203] kobj_attr_store+0x1c/0x30 [ 37.550953] sysfs_kf_write+0x48/0x60 [ 37.554619] kernfs_fop_write_iter+0x118/0x1ac [ 37.559063] new_sync_write+0xe8/0x184 [ 37.562812] vfs_write+0x230/0x290 [ 37.566214] ksys_write+0x68/0xf4 [ 37.569529] __arm64_sys_write+0x20/0x2c [ 37.573452] invoke_syscall.constprop.0+0x50/0xf0 [ 37.578156] do_el0_svc+0x11c/0x150 [ 37.581648] el0_svc+0x30/0x140 [ 37.584792] el0t_64_sync_handler+0xe8/0xf0 [ 37.588976] el0t_64_sync+0x1a0/0x1a4 [ 37.592639] ---[ end trace 56e22eec54676d75 ]---

On hibernating, pm core calls into related hooks in sequence like:

.freeze .freeze_noirq .thaw_noirq .thaw

With .thaw_noirq hook being absent, the clock will be disabled in a unbalanced call which results the warning above.

imx_uart_freeze() clk_prepare_enable() imx_uart_suspend_noirq() clk_disable() imx_uart_thaw clk_disable_unprepare()

Adding the missing .thaw_noirq hook as imx_uart_resume_noirq() will have the call sequence corrected as below and thus fix the warning.

imx_uart_freeze() clk_prepare_enable() imx_uart_suspend_noirq() clk_disable() imx_uart_resume_noirq() clk_enable() imx_uart_thaw clk_disable_unprepare()

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 09df0b3464e528c6a4ca2c48d9ff6d2fd7cbd775 to before e401312ca6e180ee1bd65f6a766e99dd40aa95e7Affected
  • 09df0b3464e528c6a4ca2c48d9ff6d2fd7cbd775 to before 476b09e07bd519ec7ba5941a6a6f9a02256dbb21Affected
  • 09df0b3464e528c6a4ca2c48d9ff6d2fd7cbd775 to before 0a3160f4ffc70ee4bfa1521f698dace06e6091fdAffected
  • 09df0b3464e528c6a4ca2c48d9ff6d2fd7cbd775 to before ae22294e213a402a70fa1731538367d1b758ffe7Affected
  • 09df0b3464e528c6a4ca2c48d9ff6d2fd7cbd775 to before e3f9d87d6f0732827c443bd1474df21c2fad704bAffected
  • 09df0b3464e528c6a4ca2c48d9ff6d2fd7cbd775 to before 4561d8008a467cb05ac632a215391d6b787f40aaAffected
LinuxLinux
  • 4.16Affected
  • before 4.16Not affected
  • 4.19.267 through 4.19.*Not affected
  • 5.4.225 through 5.4.*Not affected
  • 5.10.156 through 5.10.*Not affected
  • 5.15.80 through 5.15.*Not affected
  • 6.0.10 through 6.0.*Not affected
  • 6.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.