kernel: bump 4.9 to 4.9.82

Refresh patches.
Remove upstreamed patches:
- ar7/002-MIPS-AR7-ensure-the-port-type-s-FCR-value-is-used.patch
- backport/040-crypto-fix-typo-in-KPP-dependency-of-CRYPTO_ECDH.patch
Remove layerscape/819-Revert-dmaengine-dmatest-move-callback-wait-queue-to.patch,
it is superseded by upstream commit 297c7cc4b5651b174a62925b6c961085f04979fd.
Remove pending/650-pppoe_header_pad.patch, it is superseded by
upstream commit 1bd21b158e07e0b8c5a2ce832305a0ebfe42c480.
Update patches that no longer apply:
- ar71xx/004-register_gpio_driver_earlier.patch
- hack/204-module_strip.patch
- pending/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch

Fixes CVE-2017-8824.

Compile-tested: ar71xx.
Runtime-tested: ar71xx.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
This commit is contained in:
Stijn Tintel 2018-02-18 01:43:25 +01:00
parent 1c308bbbf5
commit f621b53951
27 changed files with 86 additions and 326 deletions

View file

@ -3,7 +3,7 @@ from mach files succeed.
--- a/drivers/gpio/gpio-ath79.c
+++ b/drivers/gpio/gpio-ath79.c
@@ -322,4 +322,8 @@ static struct platform_driver ath79_gpio
@@ -322,7 +322,11 @@ static struct platform_driver ath79_gpio
.remove = ath79_gpio_remove,
};
@ -13,3 +13,6 @@ from mach files succeed.
+ return platform_driver_register(&ath79_gpio_driver);
+}
+postcore_initcall(ath79_gpio_init);
MODULE_DESCRIPTION("Atheros AR71XX/AR724X/AR913X GPIO API support");
MODULE_LICENSE("GPL v2");

View file

@ -267,7 +267,7 @@
case IPV6_2292HOPOPTS:
--- a/net/ipv6/ip6_gre.c
+++ b/net/ipv6/ip6_gre.c
@@ -394,7 +394,7 @@ static void ip6gre_err(struct sk_buff *s
@@ -395,7 +395,7 @@ static void ip6gre_err(struct sk_buff *s
return;
ipv6h = (const struct ipv6hdr *)skb->data;
greh = (const struct gre_base_hdr *)(skb->data + offset);
@ -448,7 +448,7 @@
memcpy(p, foc->val, foc->len);
--- a/net/ipv4/igmp.c
+++ b/net/ipv4/igmp.c
@@ -533,7 +533,7 @@ static struct sk_buff *add_grec(struct s
@@ -537,7 +537,7 @@ static struct sk_buff *add_grec(struct s
if (!skb)
return NULL;
psrc = (__be32 *)skb_put(skb, sizeof(__be32));
@ -621,7 +621,7 @@
#define IP6_MF 0x0001
#define IP6_OFFSET 0xFFF8
@@ -449,8 +449,8 @@ static inline void __ipv6_addr_set_half(
@@ -450,8 +450,8 @@ static inline void __ipv6_addr_set_half(
}
#endif
#endif
@ -632,7 +632,7 @@
}
static inline void ipv6_addr_set(struct in6_addr *addr,
@@ -509,6 +509,8 @@ static inline bool ipv6_prefix_equal(con
@@ -510,6 +510,8 @@ static inline bool ipv6_prefix_equal(con
const __be32 *a1 = addr1->s6_addr32;
const __be32 *a2 = addr2->s6_addr32;
unsigned int pdw, pbi;
@ -641,7 +641,7 @@
/* check complete u32 in prefix */
pdw = prefixlen >> 5;
@@ -517,7 +519,9 @@ static inline bool ipv6_prefix_equal(con
@@ -518,7 +520,9 @@ static inline bool ipv6_prefix_equal(con
/* check incomplete u32 in prefix */
pbi = prefixlen & 0x1f;
@ -652,7 +652,7 @@
return false;
return true;
@@ -661,13 +665,13 @@ static inline void ipv6_addr_set_v4mappe
@@ -662,13 +666,13 @@ static inline void ipv6_addr_set_v4mappe
*/
static inline int __ipv6_addr_diff32(const void *token1, const void *token2, int addrlen)
{
@ -668,7 +668,7 @@
if (xb)
return i * 32 + 31 - __fls(ntohl(xb));
}
@@ -836,17 +840,18 @@ static inline int ip6_default_np_autolab
@@ -837,17 +841,18 @@ static inline int ip6_default_np_autolab
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
__be32 flowlabel)
{
@ -888,7 +888,7 @@
*sum = csum_fold(csum_partial(diff, sizeof(diff),
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -1811,15 +1811,15 @@ static int vxlan_build_skb(struct sk_buf
@@ -1789,15 +1789,15 @@ static int vxlan_build_skb(struct sk_buf
goto out_free;
vxh = (struct vxlanhdr *) __skb_push(skb, sizeof(*vxh));
@ -938,7 +938,7 @@
--- a/net/ipv4/tcp_offload.c
+++ b/net/ipv4/tcp_offload.c
@@ -215,7 +215,7 @@ struct sk_buff **tcp_gro_receive(struct
@@ -218,7 +218,7 @@ struct sk_buff **tcp_gro_receive(struct
th2 = tcp_hdr(p);
@ -947,7 +947,7 @@
NAPI_GRO_CB(p)->same_flow = 0;
continue;
}
@@ -233,8 +233,8 @@ found:
@@ -236,8 +236,8 @@ found:
~(TCP_FLAG_CWR | TCP_FLAG_FIN | TCP_FLAG_PSH));
flush |= (__force int)(th->ack_seq ^ th2->ack_seq);
for (i = sizeof(*th); i < thlen; i += 4)