kernel: update 4.4 to 4.4.89

Refresh patches.
Compile & run tested on ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
master
Kevin Darbyshire-Bryant 7 years ago committed by Stijn Tintel
parent 1d7042231b
commit 657f2a1ff8
  1. 4
      include/kernel-version.mk
  2. 2
      target/linux/generic/pending-4.4/103-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch
  3. 18
      target/linux/generic/pending-4.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
  4. 18
      target/linux/mvebu/patches-4.4/125-phy-provide-a-hook-for-link-up-link-down-events.patch

@ -3,11 +3,11 @@
LINUX_RELEASE?=1 LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .71 LINUX_VERSION-3.18 = .71
LINUX_VERSION-4.4 = .88 LINUX_VERSION-4.4 = .89
LINUX_VERSION-4.9 = .52 LINUX_VERSION-4.9 = .52
LINUX_KERNEL_HASH-3.18.71 = 5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240 LINUX_KERNEL_HASH-3.18.71 = 5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240
LINUX_KERNEL_HASH-4.4.88 = 144fe8dd773ec317fa06109b8d7bd04141bf1941daa03799fb4f437bbbb919b4 LINUX_KERNEL_HASH-4.4.89 = a81d1b1306e4fddee5d6f7219090a616073b02f4069e44522a9c0454b17f2b67
LINUX_KERNEL_HASH-4.9.52 = ffdd034f1bf32fa41d1a66a347388c0dc4c3cff6f578a1e29d88b20fbae1048a LINUX_KERNEL_HASH-4.9.52 = ffdd034f1bf32fa41d1a66a347388c0dc4c3cff6f578a1e29d88b20fbae1048a
ifdef KERNEL_PATCHVER ifdef KERNEL_PATCHVER

@ -75,7 +75,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
--- a/mm/page_alloc.c --- a/mm/page_alloc.c
+++ b/mm/page_alloc.c +++ b/mm/page_alloc.c
@@ -5345,7 +5345,7 @@ static void __init_refok alloc_node_mem_ @@ -5357,7 +5357,7 @@ static void __init_refok alloc_node_mem_
mem_map = NODE_DATA(0)->node_mem_map; mem_map = NODE_DATA(0)->node_mem_map;
#if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM) #if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM)
if (page_to_pfn(mem_map) != pgdat->node_start_pfn) if (page_to_pfn(mem_map) != pgdat->node_start_pfn)

@ -143,7 +143,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
static const struct rt6_info ip6_blk_hole_entry_template = { static const struct rt6_info ip6_blk_hole_entry_template = {
.dst = { .dst = {
.__refcnt = ATOMIC_INIT(1), .__refcnt = ATOMIC_INIT(1),
@@ -1889,6 +1906,11 @@ static struct rt6_info *ip6_route_info_c @@ -1898,6 +1915,11 @@ static struct rt6_info *ip6_route_info_c
rt->dst.output = ip6_pkt_prohibit_out; rt->dst.output = ip6_pkt_prohibit_out;
rt->dst.input = ip6_pkt_prohibit; rt->dst.input = ip6_pkt_prohibit;
break; break;
@ -155,7 +155,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
case RTN_THROW: case RTN_THROW:
case RTN_UNREACHABLE: case RTN_UNREACHABLE:
default: default:
@@ -2492,6 +2514,17 @@ static int ip6_pkt_prohibit_out(struct n @@ -2501,6 +2523,17 @@ static int ip6_pkt_prohibit_out(struct n
return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES); return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
} }
@ -173,7 +173,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
/* /*
* Allocate a dst for local (unicast / anycast) address. * Allocate a dst for local (unicast / anycast) address.
*/ */
@@ -2734,7 +2767,8 @@ static int rtm_to_fib6_config(struct sk_ @@ -2743,7 +2776,8 @@ static int rtm_to_fib6_config(struct sk_
if (rtm->rtm_type == RTN_UNREACHABLE || if (rtm->rtm_type == RTN_UNREACHABLE ||
rtm->rtm_type == RTN_BLACKHOLE || rtm->rtm_type == RTN_BLACKHOLE ||
rtm->rtm_type == RTN_PROHIBIT || rtm->rtm_type == RTN_PROHIBIT ||
@ -183,7 +183,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
cfg->fc_flags |= RTF_REJECT; cfg->fc_flags |= RTF_REJECT;
if (rtm->rtm_type == RTN_LOCAL) if (rtm->rtm_type == RTN_LOCAL)
@@ -3087,6 +3121,9 @@ static int rt6_fill_node(struct net *net @@ -3096,6 +3130,9 @@ static int rt6_fill_node(struct net *net
case -EACCES: case -EACCES:
rtm->rtm_type = RTN_PROHIBIT; rtm->rtm_type = RTN_PROHIBIT;
break; break;
@ -193,7 +193,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
case -EAGAIN: case -EAGAIN:
rtm->rtm_type = RTN_THROW; rtm->rtm_type = RTN_THROW;
break; break;
@@ -3366,6 +3403,8 @@ static int ip6_route_dev_notify(struct n @@ -3375,6 +3412,8 @@ static int ip6_route_dev_notify(struct n
#ifdef CONFIG_IPV6_MULTIPLE_TABLES #ifdef CONFIG_IPV6_MULTIPLE_TABLES
net->ipv6.ip6_prohibit_entry->dst.dev = dev; net->ipv6.ip6_prohibit_entry->dst.dev = dev;
net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev); net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
@ -202,7 +202,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
net->ipv6.ip6_blk_hole_entry->dst.dev = dev; net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev); net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
#endif #endif
@@ -3588,6 +3627,17 @@ static int __net_init ip6_route_net_init @@ -3597,6 +3636,17 @@ static int __net_init ip6_route_net_init
net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops; net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst, dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
ip6_template_metrics, true); ip6_template_metrics, true);
@ -220,7 +220,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
#endif #endif
net->ipv6.sysctl.flush_delay = 0; net->ipv6.sysctl.flush_delay = 0;
@@ -3606,6 +3656,8 @@ out: @@ -3615,6 +3665,8 @@ out:
return ret; return ret;
#ifdef CONFIG_IPV6_MULTIPLE_TABLES #ifdef CONFIG_IPV6_MULTIPLE_TABLES
@ -229,7 +229,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
out_ip6_prohibit_entry: out_ip6_prohibit_entry:
kfree(net->ipv6.ip6_prohibit_entry); kfree(net->ipv6.ip6_prohibit_entry);
out_ip6_null_entry: out_ip6_null_entry:
@@ -3623,6 +3675,7 @@ static void __net_exit ip6_route_net_exi @@ -3632,6 +3684,7 @@ static void __net_exit ip6_route_net_exi
#ifdef CONFIG_IPV6_MULTIPLE_TABLES #ifdef CONFIG_IPV6_MULTIPLE_TABLES
kfree(net->ipv6.ip6_prohibit_entry); kfree(net->ipv6.ip6_prohibit_entry);
kfree(net->ipv6.ip6_blk_hole_entry); kfree(net->ipv6.ip6_blk_hole_entry);
@ -237,7 +237,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
#endif #endif
dst_entries_destroy(&net->ipv6.ip6_dst_ops); dst_entries_destroy(&net->ipv6.ip6_dst_ops);
} }
@@ -3696,6 +3749,9 @@ void __init ip6_route_init_special_entri @@ -3705,6 +3758,9 @@ void __init ip6_route_init_special_entri
init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev; init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev;
init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);

@ -22,7 +22,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
--- a/drivers/net/phy/phy.c --- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c
@@ -852,6 +852,16 @@ void phy_start(struct phy_device *phydev @@ -849,6 +849,16 @@ void phy_start(struct phy_device *phydev
} }
EXPORT_SYMBOL(phy_start); EXPORT_SYMBOL(phy_start);
@ -39,7 +39,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
/** /**
* phy_state_machine - Handle the state machine * phy_state_machine - Handle the state machine
* @work: work_struct that describes the work to be done * @work: work_struct that describes the work to be done
@@ -893,8 +903,7 @@ void phy_state_machine(struct work_struc @@ -890,8 +900,7 @@ void phy_state_machine(struct work_struc
/* If the link is down, give up on negotiation for now */ /* If the link is down, give up on negotiation for now */
if (!phydev->link) { if (!phydev->link) {
phydev->state = PHY_NOLINK; phydev->state = PHY_NOLINK;
@ -49,7 +49,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
break; break;
} }
@@ -906,9 +915,7 @@ void phy_state_machine(struct work_struc @@ -903,9 +912,7 @@ void phy_state_machine(struct work_struc
/* If AN is done, we're running */ /* If AN is done, we're running */
if (err > 0) { if (err > 0) {
phydev->state = PHY_RUNNING; phydev->state = PHY_RUNNING;
@ -60,7 +60,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
} else if (0 == phydev->link_timeout--) } else if (0 == phydev->link_timeout--)
needs_aneg = true; needs_aneg = true;
break; break;
@@ -933,8 +940,7 @@ void phy_state_machine(struct work_struc @@ -930,8 +937,7 @@ void phy_state_machine(struct work_struc
} }
} }
phydev->state = PHY_RUNNING; phydev->state = PHY_RUNNING;
@ -70,7 +70,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
} }
break; break;
case PHY_FORCING: case PHY_FORCING:
@@ -944,13 +950,12 @@ void phy_state_machine(struct work_struc @@ -941,13 +947,12 @@ void phy_state_machine(struct work_struc
if (phydev->link) { if (phydev->link) {
phydev->state = PHY_RUNNING; phydev->state = PHY_RUNNING;
@ -86,7 +86,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
break; break;
case PHY_RUNNING: case PHY_RUNNING:
/* Only register a CHANGE if we are polling or ignoring /* Only register a CHANGE if we are polling or ignoring
@@ -982,14 +987,12 @@ void phy_state_machine(struct work_struc @@ -979,14 +984,12 @@ void phy_state_machine(struct work_struc
if (phydev->link) { if (phydev->link) {
phydev->state = PHY_RUNNING; phydev->state = PHY_RUNNING;
@ -103,7 +103,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
if (phy_interrupt_is_valid(phydev)) if (phy_interrupt_is_valid(phydev))
err = phy_config_interrupt(phydev, err = phy_config_interrupt(phydev,
PHY_INTERRUPT_ENABLED); PHY_INTERRUPT_ENABLED);
@@ -997,8 +1000,7 @@ void phy_state_machine(struct work_struc @@ -994,8 +997,7 @@ void phy_state_machine(struct work_struc
case PHY_HALTED: case PHY_HALTED:
if (phydev->link) { if (phydev->link) {
phydev->link = 0; phydev->link = 0;
@ -113,7 +113,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
do_suspend = true; do_suspend = true;
} }
break; break;
@@ -1018,11 +1020,11 @@ void phy_state_machine(struct work_struc @@ -1015,11 +1017,11 @@ void phy_state_machine(struct work_struc
if (phydev->link) { if (phydev->link) {
phydev->state = PHY_RUNNING; phydev->state = PHY_RUNNING;
@ -127,7 +127,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
} else { } else {
phydev->state = PHY_AN; phydev->state = PHY_AN;
phydev->link_timeout = PHY_AN_TIMEOUT; phydev->link_timeout = PHY_AN_TIMEOUT;
@@ -1034,11 +1036,11 @@ void phy_state_machine(struct work_struc @@ -1031,11 +1033,11 @@ void phy_state_machine(struct work_struc
if (phydev->link) { if (phydev->link) {
phydev->state = PHY_RUNNING; phydev->state = PHY_RUNNING;

Loading…
Cancel
Save