]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Fixes for 4.14
authorSasha Levin <sashal@kernel.org>
Mon, 8 Feb 2021 03:55:09 +0000 (22:55 -0500)
committerSasha Levin <sashal@kernel.org>
Mon, 8 Feb 2021 03:55:09 +0000 (22:55 -0500)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-4.14/arm64-dts-ls1046a-fix-dcfg-address-range.patch [new file with mode: 0644]
queue-4.14/input-i8042-unbreak-pegatron-c15b.patch [new file with mode: 0644]
queue-4.14/net-lapb-copy-the-skb-before-sending-a-packet.patch [new file with mode: 0644]
queue-4.14/series

diff --git a/queue-4.14/arm64-dts-ls1046a-fix-dcfg-address-range.patch b/queue-4.14/arm64-dts-ls1046a-fix-dcfg-address-range.patch
new file mode 100644 (file)
index 0000000..565cd34
--- /dev/null
@@ -0,0 +1,37 @@
+From 88aef992e0dde4eaf802c36bbddaafada4a1ae84 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Thu, 21 Jan 2021 16:52:37 +0100
+Subject: arm64: dts: ls1046a: fix dcfg address range
+
+From: Zyta Szpak <zr@semihalf.com>
+
+[ Upstream commit aa880c6f3ee6dbd0d5ab02026a514ff8ea0a3328 ]
+
+Dcfg was overlapping with clockgen address space which resulted
+in failure in memory allocation for dcfg. According regs description
+dcfg size should not be bigger than 4KB.
+
+Signed-off-by: Zyta Szpak <zr@semihalf.com>
+Fixes: 8126d88162a5 ("arm64: dts: add QorIQ LS1046A SoC support")
+Signed-off-by: Shawn Guo <shawnguo@kernel.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
+index c8ff0baddf1d0..cb49d21e317c0 100644
+--- a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
++++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
+@@ -304,7 +304,7 @@
+               dcfg: dcfg@1ee0000 {
+                       compatible = "fsl,ls1046a-dcfg", "syscon";
+-                      reg = <0x0 0x1ee0000 0x0 0x10000>;
++                      reg = <0x0 0x1ee0000 0x0 0x1000>;
+                       big-endian;
+               };
+-- 
+2.27.0
+
diff --git a/queue-4.14/input-i8042-unbreak-pegatron-c15b.patch b/queue-4.14/input-i8042-unbreak-pegatron-c15b.patch
new file mode 100644 (file)
index 0000000..35ad0a8
--- /dev/null
@@ -0,0 +1,45 @@
+From 1ae4e625fd5254b4a8e0dd7a214e6441f2d797e6 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Sun, 3 Jan 2021 17:59:51 -0800
+Subject: Input: i8042 - unbreak Pegatron C15B
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Alexey Dobriyan <adobriyan@gmail.com>
+
+[ Upstream commit a3a9060ecad030e2c7903b2b258383d2c716b56c ]
+
+g++ reports
+
+       drivers/input/serio/i8042-x86ia64io.h:225:3: error: ‘.matches’ designator used multiple times in the same initializer list
+
+C99 semantics is that last duplicated initialiser wins,
+so DMI entry gets overwritten.
+
+Fixes: a48491c65b51 ("Input: i8042 - add ByteSpeed touchpad to noloop table")
+Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
+Acked-by: Po-Hsu Lin <po-hsu.lin@canonical.com>
+Link: https://lore.kernel.org/r/20201228072335.GA27766@localhost.localdomain
+Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/input/serio/i8042-x86ia64io.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/drivers/input/serio/i8042-x86ia64io.h b/drivers/input/serio/i8042-x86ia64io.h
+index b256e3006a6fb..844875df8cad7 100644
+--- a/drivers/input/serio/i8042-x86ia64io.h
++++ b/drivers/input/serio/i8042-x86ia64io.h
+@@ -223,6 +223,8 @@ static const struct dmi_system_id __initconst i8042_dmi_noloop_table[] = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "PEGATRON CORPORATION"),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "C15B"),
+               },
++      },
++      {
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "ByteSpeed LLC"),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "ByteSpeed Laptop C15B"),
+-- 
+2.27.0
+
diff --git a/queue-4.14/net-lapb-copy-the-skb-before-sending-a-packet.patch b/queue-4.14/net-lapb-copy-the-skb-before-sending-a-packet.patch
new file mode 100644 (file)
index 0000000..2d318c9
--- /dev/null
@@ -0,0 +1,51 @@
+From cd07162bfb76b0964d84cb5374fa146341472ed4 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Sun, 31 Jan 2021 21:57:06 -0800
+Subject: net: lapb: Copy the skb before sending a packet
+
+From: Xie He <xie.he.0141@gmail.com>
+
+[ Upstream commit 88c7a9fd9bdd3e453f04018920964c6f848a591a ]
+
+When sending a packet, we will prepend it with an LAPB header.
+This modifies the shared parts of a cloned skb, so we should copy the
+skb rather than just clone it, before we prepend the header.
+
+In "Documentation/networking/driver.rst" (the 2nd point), it states
+that drivers shouldn't modify the shared parts of a cloned skb when
+transmitting.
+
+The "dev_queue_xmit_nit" function in "net/core/dev.c", which is called
+when an skb is being sent, clones the skb and sents the clone to
+AF_PACKET sockets. Because the LAPB drivers first remove a 1-byte
+pseudo-header before handing over the skb to us, if we don't copy the
+skb before prepending the LAPB header, the first byte of the packets
+received on AF_PACKET sockets can be corrupted.
+
+Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
+Signed-off-by: Xie He <xie.he.0141@gmail.com>
+Acked-by: Martin Schiller <ms@dev.tdt.de>
+Link: https://lore.kernel.org/r/20210201055706.415842-1-xie.he.0141@gmail.com
+Signed-off-by: Jakub Kicinski <kuba@kernel.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ net/lapb/lapb_out.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/net/lapb/lapb_out.c b/net/lapb/lapb_out.c
+index eda726e22f645..621c66f001177 100644
+--- a/net/lapb/lapb_out.c
++++ b/net/lapb/lapb_out.c
+@@ -87,7 +87,8 @@ void lapb_kick(struct lapb_cb *lapb)
+               skb = skb_dequeue(&lapb->write_queue);
+               do {
+-                      if ((skbn = skb_clone(skb, GFP_ATOMIC)) == NULL) {
++                      skbn = skb_copy(skb, GFP_ATOMIC);
++                      if (!skbn) {
+                               skb_queue_head(&lapb->write_queue, skb);
+                               break;
+                       }
+-- 
+2.27.0
+
index e4cd9f265443822a1aaec4024bcdff2632478761..44a5d441db41fae31fc99f294376ee36d8f21e5a 100644 (file)
@@ -1,3 +1,6 @@
 usb-serial-cp210x-add-pid-vid-for-wsda-200-usb.patch
 usb-serial-cp210x-add-new-vid-pid-for-supporting-teraoka-ad2000.patch
 usb-serial-option-adding-support-for-cinterion-mv31.patch
+input-i8042-unbreak-pegatron-c15b.patch
+arm64-dts-ls1046a-fix-dcfg-address-range.patch
+net-lapb-copy-the-skb-before-sending-a-packet.patch