openwrt/target/linux/bcm27xx/patches-5.10/950-0581-clk-requests-Dereference-the-request-pointer-after-t.patch
John Audia 0085dd6cb5 kernel: bump 5.10 to 5.10.111
Removed upstreamed:
  pending-5.10/850-0003-PCI-aardvark-Fix-support-for-MSI-interrupts.patch
  apm821xx/patches-5.10/150-ata-sata_dwc_460ex-Fix-crash-due-to-OOB-write.patch

All other patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, mt7622/RT3200
Run-tested: bcm2711/RPi4B, mt7622/RT3200

Signed-off-by: John Audia <graysky@archlinux.us>
2022-04-16 14:02:11 +02:00

31 lines
867 B
Diff

From 491c6fbbe8fadead32fbe316fd5d0f21e9aa01f2 Mon Sep 17 00:00:00 2001
From: Maxime Ripard <maxime@cerno.tech>
Date: Thu, 22 Apr 2021 10:45:37 +0200
Subject: [PATCH] clk: requests: Dereference the request pointer after
the check
The current code will first dereference the req pointer and then test if
it's NULL, resulting in a NULL pointer dereference if req is indeed
NULL. Reorder the test and derefence to avoid the issue
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
---
drivers/clk/clk.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
@@ -2520,10 +2520,11 @@ EXPORT_SYMBOL_GPL(clk_request_start);
*/
void clk_request_done(struct clk_request *req)
{
- struct clk_core *core = req->clk->core;
+ struct clk_core *core;
if (!req)
return;
+ core = req->clk->core;
clk_prepare_lock();