kernel: update 4.4 to 4.4.89
authorKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Thu, 28 Sep 2017 09:39:05 +0000 (10:39 +0100)
committerStijn Tintel <stijn@linux-ipv6.be>
Fri, 29 Sep 2017 04:42:43 +0000 (07:42 +0300)
Refresh patches.
Compile & run tested on ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
include/kernel-version.mk
target/linux/generic/pending-4.4/103-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch
target/linux/generic/pending-4.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
target/linux/mvebu/patches-4.4/125-phy-provide-a-hook-for-link-up-link-down-events.patch

index 0422c20b821e48d9f7f470aa4570f878947e871b..3d320178e64fb27f2602c1b8fa5ed35e85c581b2 100644 (file)
@@ -3,11 +3,11 @@
 LINUX_RELEASE?=1
 
 LINUX_VERSION-3.18 = .71
-LINUX_VERSION-4.4 = .88
+LINUX_VERSION-4.4 = .89
 LINUX_VERSION-4.9 = .52
 
 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
 
 ifdef KERNEL_PATCHVER
index 304cb874b56ffabcba9acc3e974aa1446ed6fdab..6c9b12c2e17e80629a9e3f55bbf93d9d28b3479d 100644 (file)
@@ -75,7 +75,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
 
 --- a/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;
  #if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM)
                if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
index c6c65d9f393b35b61bf661371270b57125d81ae5..c5f3e195daf30456fce15d339e261266b7b18b7c 100644 (file)
@@ -143,7 +143,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  static const struct rt6_info ip6_blk_hole_entry_template = {
        .dst = {
                .__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.input = ip6_pkt_prohibit;
                        break;
@@ -155,7 +155,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                case RTN_THROW:
                case RTN_UNREACHABLE:
                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);
  }
  
@@ -173,7 +173,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  /*
   *    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 ||
            rtm->rtm_type == RTN_BLACKHOLE ||
            rtm->rtm_type == RTN_PROHIBIT ||
@@ -183,7 +183,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                cfg->fc_flags |= RTF_REJECT;
  
        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:
                        rtm->rtm_type = RTN_PROHIBIT;
                        break;
@@ -193,7 +193,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                case -EAGAIN:
                        rtm->rtm_type = RTN_THROW;
                        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
                net->ipv6.ip6_prohibit_entry->dst.dev = 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->rt6i_idev = in6_dev_get(dev);
  #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;
        dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
                         ip6_template_metrics, true);
@@ -220,7 +220,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  #endif
  
        net->ipv6.sysctl.flush_delay = 0;
-@@ -3606,6 +3656,8 @@ out:
+@@ -3615,6 +3665,8 @@ out:
        return ret;
  
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
@@ -229,7 +229,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  out_ip6_prohibit_entry:
        kfree(net->ipv6.ip6_prohibit_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
        kfree(net->ipv6.ip6_prohibit_entry);
        kfree(net->ipv6.ip6_blk_hole_entry);
@@ -237,7 +237,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  #endif
        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_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);
index 75d30f6a085b1e96109dde06ca9fc255a94e5a4e..a27e6baec3dd91fbd1f29b7b3023a4cb4bb6bcc5 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
 
 --- a/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);
  
@@ -39,7 +39,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  /**
   * phy_state_machine - Handle the state machine
   * @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 (!phydev->link) {
                        phydev->state = PHY_NOLINK;
@@ -49,7 +49,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
                        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 (err > 0) {
                        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--)
                        needs_aneg = true;
                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;
@@ -70,7 +70,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
                }
                break;
        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) {
                        phydev->state = PHY_RUNNING;
@@ -86,7 +86,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
                break;
        case PHY_RUNNING:
                /* 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) {
                        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))
                        err = phy_config_interrupt(phydev,
                                                   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:
                if (phydev->link) {
                        phydev->link = 0;
@@ -113,7 +113,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
                        do_suspend = true;
                }
                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) {
                                        phydev->state = PHY_RUNNING;
@@ -127,7 +127,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
                        } else {
                                phydev->state = PHY_AN;
                                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) {
                                phydev->state = PHY_RUNNING;