kernel: bump to 4.4.38

Bump & refresh patches for all 4.4 supported targets.

Compile & run tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
v19.07.3_mercusys_ac12_duma
Kevin Darbyshire-Bryant 8 years ago committed by John Crispin
parent 1feb166ee7
commit f5b833b8fe

@ -4,11 +4,11 @@ LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .43 LINUX_VERSION-3.18 = .43
LINUX_VERSION-4.1 = .34 LINUX_VERSION-4.1 = .34
LINUX_VERSION-4.4 = .36 LINUX_VERSION-4.4 = .38
LINUX_KERNEL_MD5SUM-3.18.43 = b1faeb4a2e1e70ffe061bdbb3452840a LINUX_KERNEL_MD5SUM-3.18.43 = b1faeb4a2e1e70ffe061bdbb3452840a
LINUX_KERNEL_MD5SUM-4.1.34 = fba99f0f4765ebf01033e69518740a3c LINUX_KERNEL_MD5SUM-4.1.34 = fba99f0f4765ebf01033e69518740a3c
LINUX_KERNEL_MD5SUM-4.4.36 = c23de77131c05a27e638026972ada85b LINUX_KERNEL_MD5SUM-4.4.38 = 77ed9e650b65788a1f9f371ba87c2e50b5ba7624bc834ae38b036f7f592816a6
ifdef KERNEL_PATCHVER ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER))) LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))

@ -310,7 +310,7 @@
if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK) if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK)
--- a/net/ipv6/ip6_tunnel.c --- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c +++ b/net/ipv6/ip6_tunnel.c
@@ -1388,7 +1388,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str @@ -1397,7 +1397,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
dsfield = ipv6_get_dsfield(ipv6h); dsfield = ipv6_get_dsfield(ipv6h);
if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS) if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)

@ -1,6 +1,6 @@
--- a/drivers/pci/probe.c --- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c +++ b/drivers/pci/probe.c
@@ -1938,7 +1938,8 @@ static void pcie_write_mrrs(struct pci_d @@ -1964,7 +1964,8 @@ static void pcie_write_mrrs(struct pci_d
/* In the "safe" case, do not configure the MRRS. There appear to be /* In the "safe" case, do not configure the MRRS. There appear to be
* issues with setting MRRS to 0 on a number of devices. * issues with setting MRRS to 0 on a number of devices.
*/ */

@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (sock->type == SOCK_PACKET) if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt; po->prot_hook.func = packet_rcv_spkt;
@@ -3707,6 +3710,16 @@ packet_setsockopt(struct socket *sock, i @@ -3713,6 +3716,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit; po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0; return 0;
} }
@ -108,7 +108,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
default: default:
return -ENOPROTOOPT; return -ENOPROTOOPT;
} }
@@ -3759,6 +3772,13 @@ static int packet_getsockopt(struct sock @@ -3765,6 +3778,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR: case PACKET_VNET_HDR:
val = po->has_vnet_hdr; val = po->has_vnet_hdr;
break; break;

@ -1,6 +1,6 @@
--- a/net/netlink/af_netlink.c --- a/net/netlink/af_netlink.c
+++ b/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c
@@ -1795,27 +1795,7 @@ void netlink_detachskb(struct sock *sk, @@ -1812,27 +1812,7 @@ void netlink_detachskb(struct sock *sk,
static struct sk_buff *netlink_trim(struct sk_buff *skb, gfp_t allocation) static struct sk_buff *netlink_trim(struct sk_buff *skb, gfp_t allocation)
{ {

@ -296,7 +296,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
__skb_tunnel_rx(skb, t->dev, t->net); __skb_tunnel_rx(skb, t->dev, t->net);
@@ -1226,6 +1363,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str @@ -1235,6 +1372,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
__u32 mtu; __u32 mtu;
u8 tproto; u8 tproto;
int err; int err;
@ -304,7 +304,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
tproto = ACCESS_ONCE(t->parms.proto); tproto = ACCESS_ONCE(t->parms.proto);
if ((tproto != IPPROTO_IPV6 && tproto != 0) || if ((tproto != IPPROTO_IPV6 && tproto != 0) ||
@@ -1256,6 +1394,18 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str @@ -1265,6 +1403,18 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK) if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK)
fl6.flowi6_mark = skb->mark; fl6.flowi6_mark = skb->mark;
@ -323,7 +323,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
err = ip6_tnl_xmit2(skb, dev, dsfield, &fl6, encap_limit, &mtu); err = ip6_tnl_xmit2(skb, dev, dsfield, &fl6, encap_limit, &mtu);
if (err != 0) { if (err != 0) {
if (err == -EMSGSIZE) if (err == -EMSGSIZE)
@@ -1370,6 +1520,14 @@ ip6_tnl_change(struct ip6_tnl *t, const @@ -1379,6 +1529,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
t->parms.flowinfo = p->flowinfo; t->parms.flowinfo = p->flowinfo;
t->parms.link = p->link; t->parms.link = p->link;
t->parms.proto = p->proto; t->parms.proto = p->proto;
@ -338,7 +338,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
ip6_tnl_dst_reset(t); ip6_tnl_dst_reset(t);
ip6_tnl_link_config(t); ip6_tnl_link_config(t);
return 0; return 0;
@@ -1408,6 +1566,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_ @@ -1417,6 +1575,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
p->flowinfo = u->flowinfo; p->flowinfo = u->flowinfo;
p->link = u->link; p->link = u->link;
p->proto = u->proto; p->proto = u->proto;
@ -346,7 +346,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
memcpy(p->name, u->name, sizeof(u->name)); memcpy(p->name, u->name, sizeof(u->name));
} }
@@ -1703,6 +1862,15 @@ static int ip6_tnl_validate(struct nlatt @@ -1712,6 +1871,15 @@ static int ip6_tnl_validate(struct nlatt
return 0; return 0;
} }
@ -362,7 +362,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
static void ip6_tnl_netlink_parms(struct nlattr *data[], static void ip6_tnl_netlink_parms(struct nlattr *data[],
struct __ip6_tnl_parm *parms) struct __ip6_tnl_parm *parms)
{ {
@@ -1734,6 +1902,46 @@ static void ip6_tnl_netlink_parms(struct @@ -1743,6 +1911,46 @@ static void ip6_tnl_netlink_parms(struct
if (data[IFLA_IPTUN_PROTO]) if (data[IFLA_IPTUN_PROTO])
parms->proto = nla_get_u8(data[IFLA_IPTUN_PROTO]); parms->proto = nla_get_u8(data[IFLA_IPTUN_PROTO]);
@ -409,7 +409,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
} }
static int ip6_tnl_newlink(struct net *src_net, struct net_device *dev, static int ip6_tnl_newlink(struct net *src_net, struct net_device *dev,
@@ -1786,6 +1994,12 @@ static void ip6_tnl_dellink(struct net_d @@ -1795,6 +2003,12 @@ static void ip6_tnl_dellink(struct net_d
static size_t ip6_tnl_get_size(const struct net_device *dev) static size_t ip6_tnl_get_size(const struct net_device *dev)
{ {
@ -422,7 +422,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
return return
/* IFLA_IPTUN_LINK */ /* IFLA_IPTUN_LINK */
nla_total_size(4) + nla_total_size(4) +
@@ -1803,6 +2017,24 @@ static size_t ip6_tnl_get_size(const str @@ -1812,6 +2026,24 @@ static size_t ip6_tnl_get_size(const str
nla_total_size(4) + nla_total_size(4) +
/* IFLA_IPTUN_PROTO */ /* IFLA_IPTUN_PROTO */
nla_total_size(1) + nla_total_size(1) +
@ -447,7 +447,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
0; 0;
} }
@@ -1810,6 +2042,9 @@ static int ip6_tnl_fill_info(struct sk_b @@ -1819,6 +2051,9 @@ static int ip6_tnl_fill_info(struct sk_b
{ {
struct ip6_tnl *tunnel = netdev_priv(dev); struct ip6_tnl *tunnel = netdev_priv(dev);
struct __ip6_tnl_parm *parm = &tunnel->parms; struct __ip6_tnl_parm *parm = &tunnel->parms;
@ -457,7 +457,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) || if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) || nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) ||
@@ -1818,8 +2053,27 @@ static int ip6_tnl_fill_info(struct sk_b @@ -1827,8 +2062,27 @@ static int ip6_tnl_fill_info(struct sk_b
nla_put_u8(skb, IFLA_IPTUN_ENCAP_LIMIT, parm->encap_limit) || nla_put_u8(skb, IFLA_IPTUN_ENCAP_LIMIT, parm->encap_limit) ||
nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) || nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) ||
nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) || nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) ||
@ -486,7 +486,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
return 0; return 0;
nla_put_failure: nla_put_failure:
@@ -1843,6 +2097,7 @@ static const struct nla_policy ip6_tnl_p @@ -1852,6 +2106,7 @@ static const struct nla_policy ip6_tnl_p
[IFLA_IPTUN_FLOWINFO] = { .type = NLA_U32 }, [IFLA_IPTUN_FLOWINFO] = { .type = NLA_U32 },
[IFLA_IPTUN_FLAGS] = { .type = NLA_U32 }, [IFLA_IPTUN_FLAGS] = { .type = NLA_U32 },
[IFLA_IPTUN_PROTO] = { .type = NLA_U8 }, [IFLA_IPTUN_PROTO] = { .type = NLA_U8 },

@ -21,7 +21,7 @@ Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
--- a/net/sched/sch_generic.c --- a/net/sched/sch_generic.c
+++ b/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c
@@ -290,8 +290,23 @@ static void dev_watchdog(unsigned long a @@ -334,8 +334,23 @@ static void dev_watchdog(unsigned long a
txq = netdev_get_tx_queue(dev, i); txq = netdev_get_tx_queue(dev, i);
/* /*
* old device drivers set dev->trans_start * old device drivers set dev->trans_start

Loading…
Cancel
Save