]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 30 Nov 2020 08:16:48 +0000 (09:16 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 30 Nov 2020 08:16:48 +0000 (09:16 +0100)
added patches:
spi-bcm2835aux-restore-err-assignment-in-bcm2835aux_spi_probe.patch

queue-5.4/series
queue-5.4/spi-bcm2835aux-restore-err-assignment-in-bcm2835aux_spi_probe.patch [new file with mode: 0644]

index 6e7124bcf36ee34dbebfd2c9cc603107b392812c..6c69ba3e4f5d1c0aff4fca6c153e27fbc5e8fcf0 100644 (file)
@@ -78,3 +78,4 @@ can-m_can-m_can_open-remove-irqf_trigger_falling-fro.patch
 can-m_can-fix-nominal-bitiming-tseg2-min-for-version.patch
 perf-stat-use-proper-cpu-for-shadow-stats.patch
 perf-probe-fix-to-die_entrypc-returns-error-correctl.patch
+spi-bcm2835aux-restore-err-assignment-in-bcm2835aux_spi_probe.patch
diff --git a/queue-5.4/spi-bcm2835aux-restore-err-assignment-in-bcm2835aux_spi_probe.patch b/queue-5.4/spi-bcm2835aux-restore-err-assignment-in-bcm2835aux_spi_probe.patch
new file mode 100644 (file)
index 0000000..34a3d19
--- /dev/null
@@ -0,0 +1,52 @@
+From d853b3406903a7dc5b14eb5bada3e8cd677f66a2 Mon Sep 17 00:00:00 2001
+From: Nathan Chancellor <natechancellor@gmail.com>
+Date: Fri, 13 Nov 2020 11:07:02 -0700
+Subject: spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe
+
+From: Nathan Chancellor <natechancellor@gmail.com>
+
+commit d853b3406903a7dc5b14eb5bada3e8cd677f66a2 upstream.
+
+Clang warns:
+
+drivers/spi/spi-bcm2835aux.c:532:50: warning: variable 'err' is
+uninitialized when used here [-Wuninitialized]
+                dev_err(&pdev->dev, "could not get clk: %d\n", err);
+                                                               ^~~
+./include/linux/dev_printk.h:112:32: note: expanded from macro 'dev_err'
+        _dev_err(dev, dev_fmt(fmt), ##__VA_ARGS__)
+                                      ^~~~~~~~~~~
+drivers/spi/spi-bcm2835aux.c:495:9: note: initialize the variable 'err'
+to silence this warning
+        int err;
+               ^
+                = 0
+1 warning generated.
+
+Restore the assignment so that the error value can be used in the
+dev_err statement and there is no uninitialized memory being leaked.
+
+Fixes: e13ee6cc4781 ("spi: bcm2835aux: Fix use-after-free on unbind")
+Link: https://github.com/ClangBuiltLinux/linux/issues/1199
+Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
+Link: https://lore.kernel.org/r/20201113180701.455541-1-natechancellor@gmail.com
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/spi/spi-bcm2835aux.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/spi/spi-bcm2835aux.c
++++ b/drivers/spi/spi-bcm2835aux.c
+@@ -529,8 +529,9 @@ static int bcm2835aux_spi_probe(struct p
+       bs->clk = devm_clk_get(&pdev->dev, NULL);
+       if (IS_ERR(bs->clk)) {
++              err = PTR_ERR(bs->clk);
+               dev_err(&pdev->dev, "could not get clk: %d\n", err);
+-              return PTR_ERR(bs->clk);
++              return err;
+       }
+       bs->irq = platform_get_irq(pdev, 0);