Description
In the Linux kernel, the following vulnerability has been resolved: clk: qcom: gfx3d: add parent to parent request map After commit d228ece36345 ("clk: divider: remove round_rate() in favor of determine_rate()") determining GFX3D clock rate crashes, because the passed parent map doesn't provide the expected best_parent_hw clock (with the roundd_rate path before the offending commit the best_parent_hw was ignored). Set the field in parent_req in addition to setting it in the req, fixing the crash. clk_hw_round_rate (drivers/clk/clk.c:1764) (P) clk_divider_bestdiv (drivers/clk/clk-divider.c:336) divider_determine_rate (drivers/clk/clk-divider.c:358) clk_alpha_pll_postdiv_determine_rate (drivers/clk/qcom/clk-alpha-pll.c:1275) clk_core_determine_round_nolock (drivers/clk/clk.c:1606) clk_core_round_rate_nolock (drivers/clk/clk.c:1701) __clk_determine_rate (drivers/clk/clk.c:1741) clk_gfx3d_determine_rate (drivers/clk/qcom/clk-rcg2.c:1268) clk_core_determine_round_nolock (drivers/clk/clk.c:1606) clk_core_round_rate_nolock (drivers/clk/clk.c:1701) clk_core_round_rate_nolock (drivers/clk/clk.c:1710) clk_round_rate (drivers/clk/clk.c:1804) dev_pm_opp_set_rate (drivers/opp/core.c:1440 (discriminator 1)) msm_devfreq_target (drivers/gpu/drm/msm/msm_gpu_devfreq.c:51) devfreq_set_target (drivers/devfreq/devfreq.c:360) devfreq_update_target (drivers/devfreq/devfreq.c:426) devfreq_monitor (drivers/devfreq/devfreq.c:458) process_one_work (arch/arm64/include/asm/jump_label.h:36 include/trace/events/workqueue.h:110 kernel/workqueue.c:3284) worker_thread (kernel/workqueue.c:3356 (discriminator 2) kernel/workqueue.c:3443 (discriminator 2)) kthread (kernel/kthread.c:467) ret_from_fork (arch/arm64/kernel/entry.S:861)
Product status
55213e1acec9218580c90d36034aa0370a51daab (git) before 82cfe5292b11deb1dc33822f67f73cfbe8eafe25
55213e1acec9218580c90d36034aa0370a51daab (git) before 547ae2f17349c7586953af5ef50de43ef3f65e9e
55213e1acec9218580c90d36034aa0370a51daab (git) before 56360aa4ddd736fc19e6d0b0206c5e437e0d6ff8
55213e1acec9218580c90d36034aa0370a51daab (git) before aed53da569fb96eec09b4817b1953bcc2e467eea
55213e1acec9218580c90d36034aa0370a51daab (git) before 8aa972eba1f29068d13bec716d33abca30fb3f2a
55213e1acec9218580c90d36034aa0370a51daab (git) before 2583cb925ca1ce450aa5d74a05a67448db970193
4.5
Any version before 4.5
6.1.165 (semver)
6.6.128 (semver)
6.12.75 (semver)
6.18.14 (semver)
6.19.4 (semver)
7.0 (original_commit_for_fix)
References
git.kernel.org/...c/82cfe5292b11deb1dc33822f67f73cfbe8eafe25
git.kernel.org/...c/547ae2f17349c7586953af5ef50de43ef3f65e9e
git.kernel.org/...c/56360aa4ddd736fc19e6d0b0206c5e437e0d6ff8
git.kernel.org/...c/aed53da569fb96eec09b4817b1953bcc2e467eea
git.kernel.org/...c/8aa972eba1f29068d13bec716d33abca30fb3f2a
git.kernel.org/...c/2583cb925ca1ce450aa5d74a05a67448db970193