Refreshed all patches.
Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
LINUX_VERSION-4.9 = .189
LINUX_VERSION-4.14 = .138
-LINUX_VERSION-4.19 = .65
+LINUX_VERSION-4.19 = .66
LINUX_KERNEL_HASH-4.9.189 = 93d945661246f726b694455c80c140717d2beff5a718445a51183439bbe5d0b3
LINUX_KERNEL_HASH-4.14.138 = f250bd1de3a83c1f015f8e6e9bfa9f20eaef3dc24a6cd60116e49979314b837b
-LINUX_KERNEL_HASH-4.19.65 = e59939186916c0286289c5bf78b83fac0d71a807241c6b1899bfe7a84486dedf
+LINUX_KERNEL_HASH-4.19.66 = c981abe15c4b9496cdadb04e4f4afb88b3a78f31ced8d07684ee9c58b3fadb64
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
--- a/drivers/spi/spi-bcm2835.c
+++ b/drivers/spi/spi-bcm2835.c
-@@ -686,6 +686,8 @@ static int bcm2835_spi_setup(struct spi_
+@@ -687,6 +687,8 @@ static int bcm2835_spi_setup(struct spi_
{
int err;
struct gpio_chip *chip;
/*
* sanity checking the native-chipselects
*/
-@@ -702,15 +704,42 @@ static int bcm2835_spi_setup(struct spi_
+@@ -703,15 +705,42 @@ static int bcm2835_spi_setup(struct spi_
"setup: only two native chip-selects are supported\n");
return -EINVAL;
}
--- a/drivers/spi/spi-bcm2835.c
+++ b/drivers/spi/spi-bcm2835.c
-@@ -705,6 +705,7 @@ static int bcm2835_spi_setup(struct spi_
+@@ -706,6 +706,7 @@ static int bcm2835_spi_setup(struct spi_
return -EINVAL;
}
/* now translate native cs to GPIO */
/* first look for chip select pins in the devices pin groups */
for (pingroup_index = 0;
-@@ -754,6 +755,7 @@ static int bcm2835_spi_setup(struct spi_
+@@ -755,6 +756,7 @@ static int bcm2835_spi_setup(struct spi_
spi->chip_select, spi->cs_gpio, err);
return err;
}
--- a/drivers/spi/spi-bcm2835.c
+++ b/drivers/spi/spi-bcm2835.c
-@@ -677,17 +677,8 @@ static void bcm2835_spi_set_cs(struct sp
+@@ -678,17 +678,8 @@ static void bcm2835_spi_set_cs(struct sp
bcm2835_wr(bs, BCM2835_SPI_CS, cs);
}
/*
* sanity checking the native-chipselects
*/
-@@ -705,58 +696,6 @@ static int bcm2835_spi_setup(struct spi_
+@@ -706,58 +697,6 @@ static int bcm2835_spi_setup(struct spi_
return -EINVAL;
}
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
-@@ -5296,6 +5296,8 @@ int __init cgroup_init_early(void)
+@@ -5334,6 +5334,8 @@ int __init cgroup_init_early(void)
}
static u16 cgroup_disable_mask __initdata;
/**
* cgroup_init - cgroup initialization
-@@ -5336,6 +5338,12 @@ int __init cgroup_init(void)
+@@ -5374,6 +5376,12 @@ int __init cgroup_init(void)
mutex_unlock(&cgroup_mutex);
for_each_subsys(ss, ssid) {
if (ss->early_init) {
struct cgroup_subsys_state *css =
-@@ -5719,6 +5727,28 @@ static int __init cgroup_disable(char *s
+@@ -5765,6 +5773,28 @@ static int __init cgroup_disable(char *s
}
__setup("cgroup_disable=", cgroup_disable);
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
-@@ -5296,8 +5296,6 @@ int __init cgroup_init_early(void)
+@@ -5334,8 +5334,6 @@ int __init cgroup_init_early(void)
}
static u16 cgroup_disable_mask __initdata;
/**
* cgroup_init - cgroup initialization
-@@ -5338,12 +5336,6 @@ int __init cgroup_init(void)
+@@ -5376,12 +5374,6 @@ int __init cgroup_init(void)
mutex_unlock(&cgroup_mutex);
for_each_subsys(ss, ssid) {
if (ss->early_init) {
struct cgroup_subsys_state *css =
-@@ -5727,28 +5719,6 @@ static int __init cgroup_disable(char *s
+@@ -5773,28 +5765,6 @@ static int __init cgroup_disable(char *s
}
__setup("cgroup_disable=", cgroup_disable);
/* Read as many bytes as possible from FIFO */
bcm2835_rd_fifo(bs);
/* Write as many bytes as possible to FIFO */
-@@ -755,7 +759,8 @@ static int bcm2835_spi_probe(struct plat
+@@ -756,7 +760,8 @@ static int bcm2835_spi_probe(struct plat
bcm2835_wr(bs, BCM2835_SPI_CS,
BCM2835_SPI_CS_CLEAR_RX | BCM2835_SPI_CS_CLEAR_TX);
/**
* ip6_tnl_addr_conflict - compare packet addresses to tunnel's own
* @t: the outgoing tunnel device
-@@ -1309,6 +1449,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
+@@ -1308,6 +1448,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
{
struct ip6_tnl *t = netdev_priv(dev);
struct ipv6hdr *ipv6h;
__u16 offset;
struct flowi6 fl6;
@@ -1373,6 +1514,18 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
-
fl6.flowi6_uid = sock_net_uid(dev_net(dev), NULL);
+ dsfield = INET_ECN_encapsulate(dsfield, ipv6_get_dsfield(ipv6h));
+ /* try to find matching FMR */
+ for (fmr = t->parms.fmrs; fmr; fmr = fmr->next) {
if (iptunnel_handle_offloads(skb, SKB_GSO_IPXIP6))
return -1;
-@@ -1504,6 +1657,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
+@@ -1502,6 +1655,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
t->parms.link = p->link;
t->parms.proto = p->proto;
t->parms.fwmark = p->fwmark;
dst_cache_reset(&t->dst_cache);
ip6_tnl_link_config(t);
return 0;
-@@ -1542,6 +1703,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
+@@ -1540,6 +1701,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
p->flowinfo = u->flowinfo;
p->link = u->link;
p->proto = u->proto;
memcpy(p->name, u->name, sizeof(u->name));
}
-@@ -1928,6 +2090,15 @@ static int ip6_tnl_validate(struct nlatt
+@@ -1926,6 +2088,15 @@ static int ip6_tnl_validate(struct nlatt
return 0;
}
static void ip6_tnl_netlink_parms(struct nlattr *data[],
struct __ip6_tnl_parm *parms)
{
-@@ -1965,6 +2136,46 @@ static void ip6_tnl_netlink_parms(struct
+@@ -1963,6 +2134,46 @@ static void ip6_tnl_netlink_parms(struct
if (data[IFLA_IPTUN_FWMARK])
parms->fwmark = nla_get_u32(data[IFLA_IPTUN_FWMARK]);
}
static bool ip6_tnl_netlink_encap_parms(struct nlattr *data[],
-@@ -2080,6 +2291,12 @@ static void ip6_tnl_dellink(struct net_d
+@@ -2078,6 +2289,12 @@ static void ip6_tnl_dellink(struct net_d
static size_t ip6_tnl_get_size(const struct net_device *dev)
{
return
/* IFLA_IPTUN_LINK */
nla_total_size(4) +
-@@ -2109,6 +2326,24 @@ static size_t ip6_tnl_get_size(const str
+@@ -2107,6 +2324,24 @@ static size_t ip6_tnl_get_size(const str
nla_total_size(0) +
/* IFLA_IPTUN_FWMARK */
nla_total_size(4) +
0;
}
-@@ -2116,6 +2351,9 @@ static int ip6_tnl_fill_info(struct sk_b
+@@ -2114,6 +2349,9 @@ static int ip6_tnl_fill_info(struct sk_b
{
struct ip6_tnl *tunnel = netdev_priv(dev);
struct __ip6_tnl_parm *parm = &tunnel->parms;
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) ||
-@@ -2125,9 +2363,27 @@ static int ip6_tnl_fill_info(struct sk_b
+@@ -2123,9 +2361,27 @@ static int ip6_tnl_fill_info(struct sk_b
nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) ||
nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) ||
nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->proto) ||
if (nla_put_u16(skb, IFLA_IPTUN_ENCAP_TYPE, tunnel->encap.type) ||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_SPORT, tunnel->encap.sport) ||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_DPORT, tunnel->encap.dport) ||
-@@ -2167,6 +2423,7 @@ static const struct nla_policy ip6_tnl_p
+@@ -2165,6 +2421,7 @@ static const struct nla_policy ip6_tnl_p
[IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
[IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
[IFLA_IPTUN_FWMARK] = { .type = NLA_U32 },
--- a/drivers/net/phy/phylink.c
+++ b/drivers/net/phy/phylink.c
-@@ -337,6 +337,13 @@ static void phylink_mac_config(struct ph
+@@ -339,6 +339,13 @@ static void phylink_mac_config(struct ph
pl->ops->mac_config(pl->netdev, pl->link_an_mode, state);
}
static void phylink_mac_an_restart(struct phylink *pl)
{
if (pl->link_config.an_enabled &&
-@@ -440,12 +447,12 @@ static void phylink_resolve(struct work_
+@@ -442,12 +449,12 @@ static void phylink_resolve(struct work_
case MLO_AN_PHY:
link_state = pl->phy_state;
phylink_resolve_flow(pl, &link_state);
--- a/drivers/net/phy/phylink.c
+++ b/drivers/net/phy/phylink.c
-@@ -457,28 +457,21 @@ static void phylink_resolve(struct work_
+@@ -459,28 +459,21 @@ static void phylink_resolve(struct work_
case MLO_AN_INBAND:
phylink_get_mac_state(pl, &link_state);
--- a/drivers/net/phy/phylink.c
+++ b/drivers/net/phy/phylink.c
-@@ -947,8 +947,8 @@ void phylink_start(struct phylink *pl)
+@@ -949,8 +949,8 @@ void phylink_start(struct phylink *pl)
if (pl->link_an_mode == MLO_AN_FIXED && !IS_ERR(pl->link_gpio))
mod_timer(&pl->link_poll, jiffies + HZ);
if (pl->phydev)
phy_start(pl->phydev);
}
-@@ -969,8 +969,8 @@ void phylink_stop(struct phylink *pl)
+@@ -971,8 +971,8 @@ void phylink_stop(struct phylink *pl)
if (pl->phydev)
phy_stop(pl->phydev);