]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Fixes for 4.19
authorSasha Levin <sashal@kernel.org>
Mon, 11 Oct 2021 01:12:29 +0000 (21:12 -0400)
committerSasha Levin <sashal@kernel.org>
Mon, 11 Oct 2021 01:12:29 +0000 (21:12 -0400)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-4.19/i2c-acpi-fix-resource-leak-in-reconfiguration-device.patch [new file with mode: 0644]
queue-4.19/powerpc-bpf-fix-bpf_mod-when-imm-1.patch [new file with mode: 0644]
queue-4.19/series

diff --git a/queue-4.19/i2c-acpi-fix-resource-leak-in-reconfiguration-device.patch b/queue-4.19/i2c-acpi-fix-resource-leak-in-reconfiguration-device.patch
new file mode 100644 (file)
index 0000000..ebb88e9
--- /dev/null
@@ -0,0 +1,40 @@
+From af7dc20b954e77999afc5029c989894a662e68c5 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 22 Sep 2021 17:57:18 +0100
+Subject: i2c: acpi: fix resource leak in reconfiguration device addition
+
+From: Jamie Iles <quic_jiles@quicinc.com>
+
+[ Upstream commit 6558b646ce1c2a872fe1c2c7cb116f05a2c1950f ]
+
+acpi_i2c_find_adapter_by_handle() calls bus_find_device() which takes a
+reference on the adapter which is never released which will result in a
+reference count leak and render the adapter unremovable.  Make sure to
+put the adapter after creating the client in the same manner that we do
+for OF.
+
+Fixes: 525e6fabeae2 ("i2c / ACPI: add support for ACPI reconfigure notifications")
+Signed-off-by: Jamie Iles <quic_jiles@quicinc.com>
+Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
+[wsa: fixed title]
+Signed-off-by: Wolfram Sang <wsa@kernel.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/i2c/i2c-core-acpi.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/i2c/i2c-core-acpi.c b/drivers/i2c/i2c-core-acpi.c
+index 8ba4122fb340..8288cfb44cb2 100644
+--- a/drivers/i2c/i2c-core-acpi.c
++++ b/drivers/i2c/i2c-core-acpi.c
+@@ -395,6 +395,7 @@ static int i2c_acpi_notify(struct notifier_block *nb, unsigned long value,
+                       break;
+               i2c_acpi_register_device(adapter, adev, &info);
++              put_device(&adapter->dev);
+               break;
+       case ACPI_RECONFIG_DEVICE_REMOVE:
+               if (!acpi_device_enumerated(adev))
+-- 
+2.33.0
+
diff --git a/queue-4.19/powerpc-bpf-fix-bpf_mod-when-imm-1.patch b/queue-4.19/powerpc-bpf-fix-bpf_mod-when-imm-1.patch
new file mode 100644 (file)
index 0000000..4db3b61
--- /dev/null
@@ -0,0 +1,48 @@
+From 8b235a4816b9acb2facc9e410cbb0597eb7b2153 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 6 Oct 2021 01:55:22 +0530
+Subject: powerpc/bpf: Fix BPF_MOD when imm == 1
+
+From: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
+
+[ Upstream commit 8bbc9d822421d9ac8ff9ed26a3713c9afc69d6c8 ]
+
+Only ignore the operation if dividing by 1.
+
+Fixes: 156d0e290e969c ("powerpc/ebpf/jit: Implement JIT compiler for extended BPF")
+Signed-off-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
+Tested-by: Johan Almbladh <johan.almbladh@anyfinetworks.com>
+Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
+Acked-by: Song Liu <songliubraving@fb.com>
+Acked-by: Johan Almbladh <johan.almbladh@anyfinetworks.com>
+Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
+Link: https://lore.kernel.org/r/c674ca18c3046885602caebb326213731c675d06.1633464148.git.naveen.n.rao@linux.vnet.ibm.com
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ arch/powerpc/net/bpf_jit_comp64.c | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/arch/powerpc/net/bpf_jit_comp64.c b/arch/powerpc/net/bpf_jit_comp64.c
+index e7d56ddba43a..ff201b1fe768 100644
+--- a/arch/powerpc/net/bpf_jit_comp64.c
++++ b/arch/powerpc/net/bpf_jit_comp64.c
+@@ -385,8 +385,14 @@ static int bpf_jit_build_body(struct bpf_prog *fp, u32 *image,
+               case BPF_ALU64 | BPF_DIV | BPF_K: /* dst /= imm */
+                       if (imm == 0)
+                               return -EINVAL;
+-                      else if (imm == 1)
+-                              goto bpf_alu32_trunc;
++                      if (imm == 1) {
++                              if (BPF_OP(code) == BPF_DIV) {
++                                      goto bpf_alu32_trunc;
++                              } else {
++                                      EMIT(PPC_RAW_LI(dst_reg, 0));
++                                      break;
++                              }
++                      }
+                       PPC_LI32(b2p[TMP_REG_1], imm);
+                       switch (BPF_CLASS(code)) {
+-- 
+2.33.0
+
index a6b5ba47b7894151687c52144225eff726a10ee2..56cdd4513ab48969837886fdee14146269858eda 100644 (file)
@@ -23,3 +23,5 @@ drm-nouveau-debugfs-fix-file-release-memory-leak.patch
 rtnetlink-fix-if_nlmsg_stats_size-under-estimation.patch
 i40e-fix-endless-loop-under-rtnl.patch
 i40e-fix-freeing-of-uninitialized-misc-irq-vector.patch
+i2c-acpi-fix-resource-leak-in-reconfiguration-device.patch
+powerpc-bpf-fix-bpf_mod-when-imm-1.patch