diff --git a/include/kernel-version.mk b/include/kernel-version.mk index fcbdc09a8f..d28d84186f 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -6,13 +6,13 @@ ifdef CONFIG_TESTING_KERNEL KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) endif -LINUX_VERSION-4.9 = .288 -LINUX_VERSION-4.14 = .253 -LINUX_VERSION-4.19 = .214 +LINUX_VERSION-4.9 = .290 +LINUX_VERSION-4.14 = .255 +LINUX_VERSION-4.19 = .217 -LINUX_KERNEL_HASH-4.9.288 = 3661093d3bd7cc19eb3da922fb0f07b9b55feeb1a10ec18848741553b648a56c -LINUX_KERNEL_HASH-4.14.253 = 8e0c41a5c55efa89c8b0c688b8e19ad67128ff6c135e7031f15928875829f4d5 -LINUX_KERNEL_HASH-4.19.214 = ffe1df2f3e63a7d5f727b28ea2d6ba4a8085db45624873213b7ac6fec8b50844 +LINUX_KERNEL_HASH-4.9.290 = cdde5aa24633fcac929b15f2c2fe0c43053dc7439ab3d9c7223d82fdd8ea40db +LINUX_KERNEL_HASH-4.14.255 = f00b8001424e3f185990f6ee24a7a393b7f0996f739cd4ee6a79532b23e6b2d7 +LINUX_KERNEL_HASH-4.19.217 = 8551110cc7184b1402a21b42e498088c5b0bb824a658c5fab173c12d9904a004 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) diff --git a/target/linux/ar71xx/patches-4.14/950-add-boardinfo-platform-data.patch b/target/linux/ar71xx/patches-4.14/950-add-boardinfo-platform-data.patch index 70b715bd30..5c76f6c92f 100644 --- a/target/linux/ar71xx/patches-4.14/950-add-boardinfo-platform-data.patch +++ b/target/linux/ar71xx/patches-4.14/950-add-boardinfo-platform-data.patch @@ -26,7 +26,7 @@ #endif /* __MDIO_BOARD_INFO_H */ --- a/drivers/net/phy/mdio_bus.c +++ b/drivers/net/phy/mdio_bus.c -@@ -464,6 +464,17 @@ void mdiobus_free(struct mii_bus *bus) +@@ -463,6 +463,17 @@ void mdiobus_free(struct mii_bus *bus) } EXPORT_SYMBOL(mdiobus_free); @@ -44,7 +44,7 @@ /** * mdiobus_scan - scan a bus for MDIO devices. * @bus: mii_bus to scan -@@ -479,6 +490,7 @@ EXPORT_SYMBOL(mdiobus_free); +@@ -478,6 +489,7 @@ EXPORT_SYMBOL(mdiobus_free); struct phy_device *mdiobus_scan(struct mii_bus *bus, int addr) { struct phy_device *phydev; @@ -52,7 +52,7 @@ int err; phydev = get_phy_device(bus, addr, false); -@@ -491,6 +503,12 @@ struct phy_device *mdiobus_scan(struct m +@@ -490,6 +502,12 @@ struct phy_device *mdiobus_scan(struct m */ of_mdiobus_link_mdiodev(bus, &phydev->mdio); diff --git a/target/linux/bcm27xx/patches-4.19/950-0463-mmc-sdhci-Mask-spurious-interrupts.patch b/target/linux/bcm27xx/patches-4.19/950-0463-mmc-sdhci-Mask-spurious-interrupts.patch index e083902c95..5ef8d61e09 100644 --- a/target/linux/bcm27xx/patches-4.19/950-0463-mmc-sdhci-Mask-spurious-interrupts.patch +++ b/target/linux/bcm27xx/patches-4.19/950-0463-mmc-sdhci-Mask-spurious-interrupts.patch @@ -16,7 +16,7 @@ Signed-off-by: Phil Elwell --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c -@@ -2939,6 +2939,10 @@ static irqreturn_t sdhci_irq(int irq, vo +@@ -2945,6 +2945,10 @@ static irqreturn_t sdhci_irq(int irq, vo result = IRQ_WAKE_THREAD; } diff --git a/target/linux/brcm63xx/patches-4.19/206-USB-EHCI-allow-limiting-ports-for-ehci-platform.patch b/target/linux/brcm63xx/patches-4.19/206-USB-EHCI-allow-limiting-ports-for-ehci-platform.patch index 2fa5a00212..59e832ea85 100644 --- a/target/linux/brcm63xx/patches-4.19/206-USB-EHCI-allow-limiting-ports-for-ehci-platform.patch +++ b/target/linux/brcm63xx/patches-4.19/206-USB-EHCI-allow-limiting-ports-for-ehci-platform.patch @@ -21,7 +21,7 @@ Signed-off-by: Jonas Gorski --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c -@@ -678,6 +678,10 @@ int ehci_setup(struct usb_hcd *hcd) +@@ -687,6 +687,10 @@ int ehci_setup(struct usb_hcd *hcd) /* cache this readonly data; minimize chip reads */ ehci->hcs_params = ehci_readl(ehci, &ehci->caps->hcs_params); diff --git a/target/linux/generic/hack-4.19/721-phy_packets.patch b/target/linux/generic/hack-4.19/721-phy_packets.patch index 3b72882ded..2588a5141b 100644 --- a/target/linux/generic/hack-4.19/721-phy_packets.patch +++ b/target/linux/generic/hack-4.19/721-phy_packets.patch @@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau help --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -3260,10 +3260,20 @@ static int xmit_one(struct sk_buff *skb, +@@ -3266,10 +3266,20 @@ static int xmit_one(struct sk_buff *skb, #endif dev_queue_xmit_nit(skb, dev); diff --git a/target/linux/generic/hack-4.19/953-net-patch-linux-kernel-to-support-shortcut-fe.patch b/target/linux/generic/hack-4.19/953-net-patch-linux-kernel-to-support-shortcut-fe.patch index 11232887b3..c3010ec834 100644 --- a/target/linux/generic/hack-4.19/953-net-patch-linux-kernel-to-support-shortcut-fe.patch +++ b/target/linux/generic/hack-4.19/953-net-patch-linux-kernel-to-support-shortcut-fe.patch @@ -55,7 +55,7 @@ + bool "Enables kernel network stack path for Shortcut Forwarding Engine --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -3258,7 +3258,16 @@ static int xmit_one(struct sk_buff *skb, +@@ -3264,7 +3264,16 @@ static int xmit_one(struct sk_buff *skb, #else if (!list_empty(&ptype_all) || !list_empty(&dev->ptype_all)) #endif @@ -72,7 +72,7 @@ #ifdef CONFIG_ETHERNET_PACKET_MANGLE if (!dev->eth_mangle_tx || -@@ -4754,6 +4763,11 @@ void netdev_rx_handler_unregister(struct +@@ -4760,6 +4769,11 @@ void netdev_rx_handler_unregister(struct } EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister); @@ -84,7 +84,7 @@ /* * Limit the use of PFMEMALLOC reserves to those protocols that implement * the special handling of PFMEMALLOC skbs. -@@ -4803,6 +4817,9 @@ static int __netif_receive_skb_core(stru +@@ -4809,6 +4823,9 @@ static int __netif_receive_skb_core(stru bool deliver_exact = false; int ret = NET_RX_DROP; __be16 type; @@ -94,7 +94,7 @@ net_timestamp_check(!netdev_tstamp_prequeue, skb); -@@ -4843,6 +4860,16 @@ another_round: +@@ -4849,6 +4866,16 @@ another_round: goto out; } diff --git a/target/linux/generic/hack-4.9/710-phy-add-mdio_register_board_info.patch b/target/linux/generic/hack-4.9/710-phy-add-mdio_register_board_info.patch index 8f869172c3..db68ab9eaa 100644 --- a/target/linux/generic/hack-4.9/710-phy-add-mdio_register_board_info.patch +++ b/target/linux/generic/hack-4.9/710-phy-add-mdio_register_board_info.patch @@ -9,7 +9,7 @@ /** * mdiobus_alloc_size - allocate a mii_bus structure * @size: extra amount of memory to allocate for private storage. -@@ -409,6 +411,17 @@ void mdiobus_free(struct mii_bus *bus) +@@ -408,6 +410,17 @@ void mdiobus_free(struct mii_bus *bus) } EXPORT_SYMBOL(mdiobus_free); @@ -27,7 +27,7 @@ /** * mdiobus_scan - scan a bus for MDIO devices. * @bus: mii_bus to scan -@@ -424,6 +437,7 @@ EXPORT_SYMBOL(mdiobus_free); +@@ -423,6 +436,7 @@ EXPORT_SYMBOL(mdiobus_free); struct phy_device *mdiobus_scan(struct mii_bus *bus, int addr) { struct phy_device *phydev; @@ -35,7 +35,7 @@ int err; phydev = get_phy_device(bus, addr, false); -@@ -436,6 +450,12 @@ struct phy_device *mdiobus_scan(struct m +@@ -435,6 +449,12 @@ struct phy_device *mdiobus_scan(struct m */ of_mdiobus_link_mdiodev(bus, &phydev->mdio); diff --git a/target/linux/generic/pending-4.19/110-ehci_hcd_ignore_oc.patch b/target/linux/generic/pending-4.19/110-ehci_hcd_ignore_oc.patch index ea236d3138..8b384f163b 100644 --- a/target/linux/generic/pending-4.19/110-ehci_hcd_ignore_oc.patch +++ b/target/linux/generic/pending-4.19/110-ehci_hcd_ignore_oc.patch @@ -17,7 +17,7 @@ Signed-off-by: Florian Fainelli --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c -@@ -651,7 +651,7 @@ static int ehci_run (struct usb_hcd *hcd +@@ -660,7 +660,7 @@ static int ehci_run (struct usb_hcd *hcd "USB %x.%x started, EHCI %x.%02x%s\n", ((ehci->sbrn & 0xf0)>>4), (ehci->sbrn & 0x0f), temp >> 8, temp & 0xff, @@ -48,7 +48,7 @@ Signed-off-by: Florian Fainelli /* --- a/drivers/usb/host/ehci-platform.c +++ b/drivers/usb/host/ehci-platform.c -@@ -321,6 +321,8 @@ static int ehci_platform_probe(struct pl +@@ -327,6 +327,8 @@ static int ehci_platform_probe(struct pl hcd->has_tt = 1; if (pdata->reset_on_resume) priv->reset_on_resume = true; @@ -59,10 +59,10 @@ Signed-off-by: Florian Fainelli if (ehci->big_endian_mmio) { --- a/drivers/usb/host/ehci.h +++ b/drivers/usb/host/ehci.h -@@ -218,6 +218,7 @@ struct ehci_hcd { /* one per controlle - unsigned frame_index_bug:1; /* MosChip (AKA NetMos) */ +@@ -219,6 +219,7 @@ struct ehci_hcd { /* one per controlle unsigned need_oc_pp_cycle:1; /* MPC834X port power */ unsigned imx28_write_fix:1; /* For Freescale i.MX28 */ + unsigned is_aspeed:1; + unsigned ignore_oc:1; /* required for usb32 quirk */ diff --git a/target/linux/generic/pending-4.19/601-add-kernel-imq-support.patch b/target/linux/generic/pending-4.19/601-add-kernel-imq-support.patch index d40fab2f3b..5291bd77e6 100644 --- a/target/linux/generic/pending-4.19/601-add-kernel-imq-support.patch +++ b/target/linux/generic/pending-4.19/601-add-kernel-imq-support.patch @@ -1344,7 +1344,7 @@ #include #include #include -@@ -3248,7 +3251,12 @@ static int xmit_one(struct sk_buff *skb, +@@ -3254,7 +3257,12 @@ static int xmit_one(struct sk_buff *skb, unsigned int len; int rc; @@ -1357,7 +1357,7 @@ dev_queue_xmit_nit(skb, dev); len = skb->len; -@@ -3287,6 +3295,8 @@ out: +@@ -3293,6 +3301,8 @@ out: return skb; } diff --git a/target/linux/generic/pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch b/target/linux/generic/pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch index 129e4c7159..2397801a4b 100644 --- a/target/linux/generic/pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch +++ b/target/linux/generic/pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch @@ -110,7 +110,7 @@ Signed-off-by: Jonas Gorski return -EINVAL; --- a/net/ipv6/route.c +++ b/net/ipv6/route.c -@@ -97,6 +97,8 @@ static int ip6_pkt_discard(struct sk_bu +@@ -98,6 +98,8 @@ static int ip6_pkt_discard(struct sk_bu static int ip6_pkt_discard_out(struct net *net, struct sock *sk, struct sk_buff *skb); static int ip6_pkt_prohibit(struct sk_buff *skb); static int ip6_pkt_prohibit_out(struct net *net, struct sock *sk, struct sk_buff *skb); @@ -119,7 +119,7 @@ Signed-off-by: Jonas Gorski static void ip6_link_failure(struct sk_buff *skb); static void ip6_rt_update_pmtu(struct dst_entry *dst, struct sock *sk, struct sk_buff *skb, u32 mtu, -@@ -328,6 +330,18 @@ static const struct rt6_info ip6_prohibi +@@ -329,6 +331,18 @@ static const struct rt6_info ip6_prohibi .rt6i_flags = (RTF_REJECT | RTF_NONEXTHOP), }; @@ -138,7 +138,7 @@ Signed-off-by: Jonas Gorski static const struct rt6_info ip6_blk_hole_entry_template = { .dst = { .__refcnt = ATOMIC_INIT(1), -@@ -906,6 +920,7 @@ static const int fib6_prop[RTN_MAX + 1] +@@ -907,6 +921,7 @@ static const int fib6_prop[RTN_MAX + 1] [RTN_BLACKHOLE] = -EINVAL, [RTN_UNREACHABLE] = -EHOSTUNREACH, [RTN_PROHIBIT] = -EACCES, @@ -146,7 +146,7 @@ Signed-off-by: Jonas Gorski [RTN_THROW] = -EAGAIN, [RTN_NAT] = -EINVAL, [RTN_XRESOLVE] = -EINVAL, -@@ -943,6 +958,10 @@ static void ip6_rt_init_dst_reject(struc +@@ -944,6 +959,10 @@ static void ip6_rt_init_dst_reject(struc rt->dst.output = ip6_pkt_prohibit_out; rt->dst.input = ip6_pkt_prohibit; break; @@ -157,7 +157,7 @@ Signed-off-by: Jonas Gorski case RTN_THROW: case RTN_UNREACHABLE: default: -@@ -3791,6 +3810,17 @@ static int ip6_pkt_prohibit_out(struct n +@@ -3802,6 +3821,17 @@ static int ip6_pkt_prohibit_out(struct n return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES); } @@ -175,7 +175,7 @@ Signed-off-by: Jonas Gorski /* * Allocate a dst for local (unicast / anycast) address. */ -@@ -4238,7 +4268,8 @@ static int rtm_to_fib6_config(struct sk_ +@@ -4249,7 +4279,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 || @@ -185,7 +185,7 @@ Signed-off-by: Jonas Gorski cfg->fc_flags |= RTF_REJECT; if (rtm->rtm_type == RTN_LOCAL) -@@ -5089,6 +5120,8 @@ static int ip6_route_dev_notify(struct n +@@ -5100,6 +5131,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); @@ -194,7 +194,7 @@ Signed-off-by: Jonas Gorski net->ipv6.ip6_blk_hole_entry->dst.dev = dev; net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev); #endif -@@ -5100,6 +5133,7 @@ static int ip6_route_dev_notify(struct n +@@ -5111,6 +5144,7 @@ static int ip6_route_dev_notify(struct n in6_dev_put_clear(&net->ipv6.ip6_null_entry->rt6i_idev); #ifdef CONFIG_IPV6_MULTIPLE_TABLES in6_dev_put_clear(&net->ipv6.ip6_prohibit_entry->rt6i_idev); @@ -202,7 +202,7 @@ Signed-off-by: Jonas Gorski in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev); #endif } -@@ -5294,6 +5328,15 @@ static int __net_init ip6_route_net_init +@@ -5305,6 +5339,15 @@ 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); @@ -218,7 +218,7 @@ Signed-off-by: Jonas Gorski #endif net->ipv6.sysctl.flush_delay = 0; -@@ -5312,6 +5355,8 @@ out: +@@ -5323,6 +5366,8 @@ out: return ret; #ifdef CONFIG_IPV6_MULTIPLE_TABLES @@ -227,7 +227,7 @@ Signed-off-by: Jonas Gorski out_ip6_prohibit_entry: kfree(net->ipv6.ip6_prohibit_entry); out_ip6_null_entry: -@@ -5332,6 +5377,7 @@ static void __net_exit ip6_route_net_exi +@@ -5343,6 +5388,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); @@ -235,7 +235,7 @@ Signed-off-by: Jonas Gorski #endif dst_entries_destroy(&net->ipv6.ip6_dst_ops); } -@@ -5408,6 +5454,9 @@ void __init ip6_route_init_special_entri +@@ -5419,6 +5465,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); diff --git a/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch index c8a8b39d58..156138bd80 100644 --- a/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch +++ b/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch @@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau __u16 tc_index; /* traffic control index */ --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -5472,6 +5472,9 @@ static enum gro_result dev_gro_receive(s +@@ -5478,6 +5478,9 @@ static enum gro_result dev_gro_receive(s int same_flow; int grow; @@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau if (netif_elide_gro(skb->dev)) goto normal; -@@ -7138,6 +7141,48 @@ static void __netdev_adjacent_dev_unlink +@@ -7144,6 +7147,48 @@ static void __netdev_adjacent_dev_unlink &upper_dev->adj_list.lower); } @@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau static int __netdev_upper_dev_link(struct net_device *dev, struct net_device *upper_dev, bool master, void *upper_priv, void *upper_info, -@@ -7188,6 +7233,7 @@ static int __netdev_upper_dev_link(struc +@@ -7194,6 +7239,7 @@ static int __netdev_upper_dev_link(struc if (ret) return ret; @@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, &changeupper_info.info); ret = notifier_to_errno(ret); -@@ -7280,6 +7326,7 @@ void netdev_upper_dev_unlink(struct net_ +@@ -7286,6 +7332,7 @@ void netdev_upper_dev_unlink(struct net_ __netdev_adjacent_dev_unlink_neighbour(dev, upper_dev); @@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, &changeupper_info.info); -@@ -7919,6 +7966,7 @@ int dev_set_mac_address(struct net_devic +@@ -7925,6 +7972,7 @@ int dev_set_mac_address(struct net_devic if (err) return err; dev->addr_assign_type = NET_ADDR_SET; diff --git a/target/linux/generic/pending-4.19/690-net-add-support-for-threaded-NAPI-polling.patch b/target/linux/generic/pending-4.19/690-net-add-support-for-threaded-NAPI-polling.patch index ab0e4380c9..be4a39c709 100644 --- a/target/linux/generic/pending-4.19/690-net-add-support-for-threaded-NAPI-polling.patch +++ b/target/linux/generic/pending-4.19/690-net-add-support-for-threaded-NAPI-polling.patch @@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau static int netif_rx_internal(struct sk_buff *skb); static int call_netdevice_notifiers_info(unsigned long val, -@@ -5902,6 +5903,11 @@ void __napi_schedule(struct napi_struct +@@ -5908,6 +5909,11 @@ void __napi_schedule(struct napi_struct { unsigned long flags; @@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau local_irq_save(flags); ____napi_schedule(this_cpu_ptr(&softnet_data), n); local_irq_restore(flags); -@@ -5953,6 +5959,11 @@ EXPORT_SYMBOL(napi_schedule_prep); +@@ -5959,6 +5965,11 @@ EXPORT_SYMBOL(napi_schedule_prep); */ void __napi_schedule_irqoff(struct napi_struct *n) { @@ -111,7 +111,7 @@ Signed-off-by: Felix Fietkau if (!IS_ENABLED(CONFIG_PREEMPT_RT)) ____napi_schedule(this_cpu_ptr(&softnet_data), n); else -@@ -6204,6 +6215,82 @@ static void init_gro_hash(struct napi_st +@@ -6210,6 +6221,82 @@ static void init_gro_hash(struct napi_st napi->gro_bitmask = 0; } @@ -194,7 +194,7 @@ Signed-off-by: Felix Fietkau void netif_napi_add(struct net_device *dev, struct napi_struct *napi, int (*poll)(struct napi_struct *, int), int weight) { -@@ -6221,6 +6308,7 @@ void netif_napi_add(struct net_device *d +@@ -6227,6 +6314,7 @@ void netif_napi_add(struct net_device *d #ifdef CONFIG_NETPOLL napi->poll_owner = -1; #endif @@ -202,7 +202,7 @@ Signed-off-by: Felix Fietkau set_bit(NAPI_STATE_SCHED, &napi->state); set_bit(NAPI_STATE_NPSVC, &napi->state); list_add_rcu(&napi->dev_list, &dev->napi_list); -@@ -6261,6 +6349,7 @@ static void flush_gro_hash(struct napi_s +@@ -6267,6 +6355,7 @@ static void flush_gro_hash(struct napi_s void netif_napi_del(struct napi_struct *napi) { might_sleep(); @@ -210,7 +210,7 @@ Signed-off-by: Felix Fietkau if (napi_hash_del(napi)) synchronize_net(); list_del_init(&napi->dev_list); -@@ -6273,49 +6362,19 @@ EXPORT_SYMBOL(netif_napi_del); +@@ -6279,49 +6368,19 @@ EXPORT_SYMBOL(netif_napi_del); static int napi_poll(struct napi_struct *n, struct list_head *repoll) { @@ -264,7 +264,7 @@ Signed-off-by: Felix Fietkau /* Some drivers may have called napi_schedule * prior to exhausting their budget. */ -@@ -9919,6 +9978,10 @@ static int __init net_dev_init(void) +@@ -9925,6 +9984,10 @@ static int __init net_dev_init(void) sd->backlog.weight = weight_p; } diff --git a/target/linux/layerscape/patches-4.14/819-sdhc-support-layerscape.patch b/target/linux/layerscape/patches-4.14/819-sdhc-support-layerscape.patch index 583ca11751..746391a31f 100644 --- a/target/linux/layerscape/patches-4.14/819-sdhc-support-layerscape.patch +++ b/target/linux/layerscape/patches-4.14/819-sdhc-support-layerscape.patch @@ -497,7 +497,7 @@ Signed-off-by: Yinbo Zhu .name = "sdhci-esdhc", --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c -@@ -2152,7 +2152,7 @@ static void sdhci_send_tuning(struct sdh +@@ -2158,7 +2158,7 @@ static void sdhci_send_tuning(struct sdh } @@ -506,7 +506,7 @@ Signed-off-by: Yinbo Zhu { int i; -@@ -2169,13 +2169,13 @@ static void __sdhci_execute_tuning(struc +@@ -2175,13 +2175,13 @@ static void __sdhci_execute_tuning(struc pr_debug("%s: Tuning timeout, falling back to fixed sampling clock\n", mmc_hostname(host->mmc)); sdhci_abort_tuning(host, opcode); @@ -522,7 +522,7 @@ Signed-off-by: Yinbo Zhu break; } -@@ -2187,6 +2187,7 @@ static void __sdhci_execute_tuning(struc +@@ -2193,6 +2193,7 @@ static void __sdhci_execute_tuning(struc pr_info("%s: Tuning failed, falling back to fixed sampling clock\n", mmc_hostname(host->mmc)); sdhci_reset_tuning(host); @@ -530,7 +530,7 @@ Signed-off-by: Yinbo Zhu } int sdhci_execute_tuning(struct mmc_host *mmc, u32 opcode) -@@ -2248,7 +2249,7 @@ int sdhci_execute_tuning(struct mmc_host +@@ -2254,7 +2255,7 @@ int sdhci_execute_tuning(struct mmc_host sdhci_start_tuning(host); diff --git a/target/linux/ramips/patches-4.14/700-net-mdiobus-add-unlocked-accessors.patch b/target/linux/ramips/patches-4.14/700-net-mdiobus-add-unlocked-accessors.patch index 96270f8441..0df9f99cd5 100644 --- a/target/linux/ramips/patches-4.14/700-net-mdiobus-add-unlocked-accessors.patch +++ b/target/linux/ramips/patches-4.14/700-net-mdiobus-add-unlocked-accessors.patch @@ -19,7 +19,7 @@ Signed-off-by: David S. Miller --- a/drivers/net/phy/mdio_bus.c +++ b/drivers/net/phy/mdio_bus.c -@@ -502,6 +502,55 @@ struct phy_device *mdiobus_scan(struct m +@@ -501,6 +501,55 @@ struct phy_device *mdiobus_scan(struct m EXPORT_SYMBOL(mdiobus_scan); /** @@ -75,7 +75,7 @@ Signed-off-by: David S. Miller * mdiobus_read_nested - Nested version of the mdiobus_read function * @bus: the mii_bus struct * @addr: the phy address -@@ -521,11 +570,9 @@ int mdiobus_read_nested(struct mii_bus * +@@ -520,11 +569,9 @@ int mdiobus_read_nested(struct mii_bus * BUG_ON(in_interrupt()); mutex_lock_nested(&bus->mdio_lock, MDIO_MUTEX_NESTED); @@ -88,7 +88,7 @@ Signed-off-by: David S. Miller return retval; } EXPORT_SYMBOL(mdiobus_read_nested); -@@ -547,11 +594,9 @@ int mdiobus_read(struct mii_bus *bus, in +@@ -546,11 +593,9 @@ int mdiobus_read(struct mii_bus *bus, in BUG_ON(in_interrupt()); mutex_lock(&bus->mdio_lock); @@ -101,7 +101,7 @@ Signed-off-by: David S. Miller return retval; } EXPORT_SYMBOL(mdiobus_read); -@@ -577,11 +622,9 @@ int mdiobus_write_nested(struct mii_bus +@@ -576,11 +621,9 @@ int mdiobus_write_nested(struct mii_bus BUG_ON(in_interrupt()); mutex_lock_nested(&bus->mdio_lock, MDIO_MUTEX_NESTED); @@ -114,7 +114,7 @@ Signed-off-by: David S. Miller return err; } EXPORT_SYMBOL(mdiobus_write_nested); -@@ -604,11 +647,9 @@ int mdiobus_write(struct mii_bus *bus, i +@@ -603,11 +646,9 @@ int mdiobus_write(struct mii_bus *bus, i BUG_ON(in_interrupt()); mutex_lock(&bus->mdio_lock);