diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.10/950-0581-clk-requests-Dereference-the-request-pointer-after-t.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.10/950-0581-clk-requests-Dereference-the-request-pointer-after-t.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.10/950-0581-clk-requests-Dereference-the-request-pointer-after-t.patch b/target/linux/bcm27xx/patches-5.10/950-0581-clk-requests-Dereference-the-request-pointer-after-t.patch new file mode 100644 index 0000000000..9f87aadc17 --- /dev/null +++ b/target/linux/bcm27xx/patches-5.10/950-0581-clk-requests-Dereference-the-request-pointer-after-t.patch @@ -0,0 +1,30 @@ +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 +@@ -2496,10 +2496,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(); + |