aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/backport-5.4
diff options
context:
space:
mode:
authorPetr Štetiar <ynezz@true.cz>2020-03-26 15:19:42 +0100
committerPetr Štetiar <ynezz@true.cz>2020-03-28 13:03:02 +0100
commit5ecc0cfd6f3da1e8f573024753169aa6f115745e (patch)
tree23aa098938d7a572de3f56bc35661cd5cb2a05aa /target/linux/generic/backport-5.4
parentbf15557f8a85e7ada25074122f4af5bd3a5df697 (diff)
downloadupstream-5ecc0cfd6f3da1e8f573024753169aa6f115745e.tar.gz
upstream-5ecc0cfd6f3da1e8f573024753169aa6f115745e.tar.bz2
upstream-5ecc0cfd6f3da1e8f573024753169aa6f115745e.zip
kernel: bump 5.4 to 5.4.28
Changelog since 5.4.24 mentions CVE-2019-19769, CVE-2020-8648, CVE-2020-8649 and CVE-2020-8647. Removed upstreamed: generic: 507-v5.6-iio-chemical-sps30-fix-missing-triggered-buffer-depe.patch generic: 600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch bcm27xx: 950-0435-ASoC-pcm512x-Fix-unbalanced-regulator-enable-call-in.patch ipq806x: 701-stmmac-fix-notifier-registration.patch lantiq: 002-pinctrl-falcon-fix-syntax-error.patch octeontx: 0002-net-thunderx-workaround-BGX-TX-Underflow-issue.patch Run tested: apu2, qemu-x86-64, apalis, a64-olinuxino, nbg6617 Build tested: sunxi/a53, imx6, x86/64, ipq40xx Tested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> [apu2] Signed-off-by: Petr Štetiar <ynezz@true.cz>
Diffstat (limited to 'target/linux/generic/backport-5.4')
-rw-r--r--target/linux/generic/backport-5.4/507-v5.6-iio-chemical-sps30-fix-missing-triggered-buffer-depe.patch30
-rw-r--r--target/linux/generic/backport-5.4/600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch71
-rw-r--r--target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch16
3 files changed, 8 insertions, 109 deletions
diff --git a/target/linux/generic/backport-5.4/507-v5.6-iio-chemical-sps30-fix-missing-triggered-buffer-depe.patch b/target/linux/generic/backport-5.4/507-v5.6-iio-chemical-sps30-fix-missing-triggered-buffer-depe.patch
deleted file mode 100644
index 9c2c4d5a8f..0000000000
--- a/target/linux/generic/backport-5.4/507-v5.6-iio-chemical-sps30-fix-missing-triggered-buffer-depe.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 61338e27e2eef3bfcd3df5c39cec5b9dc10ba25c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20=C5=A0tetiar?= <ynezz@true.cz>
-Date: Sun, 23 Feb 2020 22:08:25 +0100
-Subject: [PATCH] iio: chemical: sps30: fix missing triggered buffer dependency
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-SPS30 uses triggered buffer, but the dependency is not specified in the
-Kconfig file. Fix this by selecting IIO_BUFFER and IIO_TRIGGERED_BUFFER
-config symbols.
-
-Cc: stable@vger.kernel.org
-Fixes: 232e0f6ddeae ("iio: chemical: add support for Sensirion SPS30 sensor")
-Signed-off-by: Petr Štetiar <ynezz@true.cz>
----
- drivers/iio/chemical/Kconfig | 2 ++
- 1 file changed, 2 insertions(+)
-
---- a/drivers/iio/chemical/Kconfig
-+++ b/drivers/iio/chemical/Kconfig
-@@ -91,6 +91,8 @@ config SPS30
- tristate "SPS30 particulate matter sensor"
- depends on I2C
- select CRC8
-+ select IIO_BUFFER
-+ select IIO_TRIGGERED_BUFFER
- help
- Say Y here to build support for the Sensirion SPS30 particulate
- matter sensor.
diff --git a/target/linux/generic/backport-5.4/600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch b/target/linux/generic/backport-5.4/600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch
deleted file mode 100644
index d8fe827fa7..0000000000
--- a/target/linux/generic/backport-5.4/600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 82afdcd4ec3c8ca6551cbf7c43c09e2fd240487a Mon Sep 17 00:00:00 2001
-From: Hangbin Liu <liuhangbin@gmail.com>
-Date: Tue, 10 Mar 2020 15:27:37 +0800
-Subject: [PATCH] ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Rafał found an issue that for non-Ethernet interface, if we down and up
-frequently, the memory will be consumed slowly.
-
-The reason is we add allnodes/allrouters addressed in multicast list in
-ipv6_add_dev(). When link down, we call ipv6_mc_down(), store all multicast
-addresses via mld_add_delrec(). But when link up, we don't call ipv6_mc_up()
-for non-Ethernet interface to remove the addresses. This makes idev->mc_tomb
-getting bigger and bigger. The call stack looks like:
-
-addrconf_notify(NETDEV_REGISTER)
- ipv6_add_dev
- ipv6_dev_mc_inc(ff01::1)
- ipv6_dev_mc_inc(ff02::1)
- ipv6_dev_mc_inc(ff02::2)
-
-addrconf_notify(NETDEV_UP)
- addrconf_dev_config
- /* Alas, we support only Ethernet autoconfiguration. */
- return;
-
-addrconf_notify(NETDEV_DOWN)
- addrconf_ifdown
- ipv6_mc_down
- igmp6_group_dropped(ff02::2)
- mld_add_delrec(ff02::2)
- igmp6_group_dropped(ff02::1)
- igmp6_group_dropped(ff01::1)
-
-After investigating, I can't found a rule to disable multicast on
-non-Ethernet interface. In RFC2460, the link could be Ethernet, PPP, ATM,
-tunnels, etc. In IPv4, it doesn't check the dev type when calls ip_mc_up()
-in inetdev_event(). Even for IPv6, we don't check the dev type and call
-ipv6_add_dev(), ipv6_dev_mc_inc() after register device.
-
-So I think it's OK to fix this memory consumer by calling ipv6_mc_up() for
-non-Ethernet interface.
-
-v2: Also check IFF_MULTICAST flag to make sure the interface supports
- multicast
-
-Reported-by: Rafał Miłecki <zajec5@gmail.com>
-Tested-by: Rafał Miłecki <zajec5@gmail.com>
-Fixes: 74235a25c673 ("[IPV6] addrconf: Fix IPv6 on tuntap tunnels")
-Fixes: 1666d49e1d41 ("mld: do not remove mld souce list info when set link down")
-Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- net/ipv6/addrconf.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
---- a/net/ipv6/addrconf.c
-+++ b/net/ipv6/addrconf.c
-@@ -3345,6 +3345,10 @@ static void addrconf_dev_config(struct n
- (dev->type != ARPHRD_NONE) &&
- (dev->type != ARPHRD_RAWIP)) {
- /* Alas, we support only Ethernet autoconfiguration. */
-+ idev = __in6_dev_get(dev);
-+ if (!IS_ERR_OR_NULL(idev) && dev->flags & IFF_UP &&
-+ dev->flags & IFF_MULTICAST)
-+ ipv6_mc_up(idev);
- return;
- }
-
diff --git a/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch b/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch
index 7835d3f19f..23230abfbb 100644
--- a/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch
+++ b/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch
@@ -24,7 +24,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
#include <linux/workqueue.h>
#include <linux/mdio.h>
#include <linux/io.h>
-@@ -841,6 +842,9 @@ void phy_stop(struct phy_device *phydev)
+@@ -842,6 +843,9 @@ void phy_stop(struct phy_device *phydev)
mutex_lock(&phydev->lock);
@@ -34,7 +34,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
phydev->state = PHY_HALTED;
mutex_unlock(&phydev->lock);
-@@ -903,6 +907,9 @@ void phy_state_machine(struct work_struc
+@@ -904,6 +908,9 @@ void phy_state_machine(struct work_struc
old_state = phydev->state;
@@ -54,7 +54,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
#include <linux/mdio.h>
#include <linux/io.h>
#include <linux/uaccess.h>
-@@ -1178,6 +1179,65 @@ phy_standalone_show(struct device *dev,
+@@ -1183,6 +1184,65 @@ phy_standalone_show(struct device *dev,
static DEVICE_ATTR_RO(phy_standalone);
/**
@@ -120,7 +120,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
* phy_attach_direct - attach a network device to a given PHY device pointer
* @dev: network device to attach
* @phydev: Pointer to phy_device to attach
-@@ -1254,6 +1314,9 @@ int phy_attach_direct(struct net_device
+@@ -1259,6 +1319,9 @@ int phy_attach_direct(struct net_device
dev->phydev = phydev;
}
@@ -130,7 +130,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
/* Some Ethernet drivers try to connect to a PHY device before
* calling register_netdevice() -> netdev_register_kobject() and
* does the dev->dev.kobj initialization. Here we only check for
-@@ -2282,6 +2345,9 @@ static int phy_remove(struct device *dev
+@@ -2287,6 +2350,9 @@ static int phy_remove(struct device *dev
phydev->state = PHY_DOWN;
mutex_unlock(&phydev->lock);
@@ -151,7 +151,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
struct sk_buff;
/*
-@@ -342,6 +344,8 @@ struct phy_c45_device_ids {
+@@ -343,6 +345,8 @@ struct phy_c45_device_ids {
* dev_flags: Device-specific flags used by the PHY driver.
* irq: IRQ number of the PHY's interrupt (-1 if none)
* phy_timer: The timer for handling the state machine
@@ -160,7 +160,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
* attached_dev: The attached enet driver's device instance ptr
* adjust_link: Callback for the enet controller to respond to
* changes in the link state.
-@@ -432,6 +436,9 @@ struct phy_device {
+@@ -434,6 +438,9 @@ struct phy_device {
struct mutex lock;
@@ -170,7 +170,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
struct phylink *phylink;
struct net_device *attached_dev;
-@@ -1020,6 +1027,10 @@ int phy_suspend(struct phy_device *phyde
+@@ -1023,6 +1030,10 @@ int phy_suspend(struct phy_device *phyde
int phy_resume(struct phy_device *phydev);
int __phy_resume(struct phy_device *phydev);
int phy_loopback(struct phy_device *phydev, bool enable);