sst-linux/drivers/clk/samsung
Will McVicker 0fef48f4a7 clk: samsung: Fix UBSAN panic in samsung_clk_init()
[ Upstream commit d19d7345a7bcdb083b65568a11b11adffe0687af ]

With UBSAN_ARRAY_BOUNDS=y, I'm hitting the below panic due to
dereferencing `ctx->clk_data.hws` before setting
`ctx->clk_data.num = nr_clks`. Move that up to fix the crash.

  UBSAN: array index out of bounds: 00000000f2005512 [#1] PREEMPT SMP
  <snip>
  Call trace:
   samsung_clk_init+0x110/0x124 (P)
   samsung_clk_init+0x48/0x124 (L)
   samsung_cmu_register_one+0x3c/0xa0
   exynos_arm64_register_cmu+0x54/0x64
   __gs101_cmu_top_of_clk_init_declare+0x28/0x60
   ...

Fixes: e620a1e061 ("drivers/clk: convert VL struct to struct_size")
Signed-off-by: Will McVicker <willmcvicker@google.com>
Link: https://lore.kernel.org/r/20250212183253.509771-1-willmcvicker@google.com
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-10 14:33:34 +02:00
..
clk-cpu.c
clk-cpu.h
clk-exynos4.c
clk-exynos5-subcmu.c
clk-exynos5-subcmu.h
clk-exynos7.c
clk-exynos850.c
clk-exynos3250.c
clk-exynos4412-isp.c
clk-exynos5250.c
clk-exynos5260.c
clk-exynos5260.h
clk-exynos5410.c
clk-exynos5420.c
clk-exynos5433.c
clk-exynos7885.c clk: samsung: exynos7885: Update CLKS_NR_FSYS after bindings fix 2024-10-17 15:22:07 +02:00
clk-exynos-arm64.c
clk-exynos-arm64.h
clk-exynos-audss.c
clk-exynos-clkout.c
clk-exynosautov9.c
clk-fsd.c
clk-pll.c clk: samsung: update PLL locktime for PLL142XX used on FSD platform 2025-03-28 21:58:57 +01:00
clk-pll.h
clk-s3c64xx.c
clk-s3c2410-dclk.c
clk-s3c2410.c
clk-s3c2412.c
clk-s3c2443.c
clk-s5pv210-audss.c
clk-s5pv210.c
clk.c clk: samsung: Fix UBSAN panic in samsung_clk_init() 2025-04-10 14:33:34 +02:00
clk.h
Kconfig
Makefile