aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/kernel-version.mk4
-rw-r--r--target/linux/generic/patches-4.0/072-15-bgmac-fix-requests-for-extra-polling-calls-from-NAPI.patch7
-rw-r--r--target/linux/generic/patches-4.0/102-ehci_hcd_ignore_oc.patch4
-rw-r--r--target/linux/generic/patches-4.0/304-mips_disable_fpu.patch4
-rw-r--r--target/linux/generic/patches-4.0/411-mtd-partial_eraseblock_write.patch3
-rw-r--r--target/linux/generic/patches-4.0/650-pppoe_header_pad.patch4
-rw-r--r--target/linux/generic/patches-4.0/653-disable_netlink_trim.patch2
-rw-r--r--target/linux/generic/patches-4.0/655-increase_skb_pad.patch2
-rw-r--r--target/linux/generic/patches-4.0/656-skb_reduce_truesize-helper.patch2
-rw-r--r--target/linux/generic/patches-4.0/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch14
-rw-r--r--target/linux/generic/patches-4.0/721-phy_packets.patch6
-rw-r--r--target/linux/generic/patches-4.0/820-usb_add_usb_find_device_by_name.patch2
12 files changed, 24 insertions, 30 deletions
diff --git a/include/kernel-version.mk b/include/kernel-version.mk
index 6e4a5638c8..3bb52c5ccf 100644
--- a/include/kernel-version.mk
+++ b/include/kernel-version.mk
@@ -3,10 +3,10 @@
LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .14
-LINUX_VERSION-4.0 = .1
+LINUX_VERSION-4.0 = .4
LINUX_KERNEL_MD5SUM-3.18.14 = cb6f534b83333ba52f1fed7979824a1b
-LINUX_KERNEL_MD5SUM-4.0.1 = ea7fc80310be8a5b43b2c6dfa5c4169f
+LINUX_KERNEL_MD5SUM-4.0.4 = 71d8b666438e6b59f103e9384889c15a
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))
diff --git a/target/linux/generic/patches-4.0/072-15-bgmac-fix-requests-for-extra-polling-calls-from-NAPI.patch b/target/linux/generic/patches-4.0/072-15-bgmac-fix-requests-for-extra-polling-calls-from-NAPI.patch
index 39cf048b9c..62e9379f94 100644
--- a/target/linux/generic/patches-4.0/072-15-bgmac-fix-requests-for-extra-polling-calls-from-NAPI.patch
+++ b/target/linux/generic/patches-4.0/072-15-bgmac-fix-requests-for-extra-polling-calls-from-NAPI.patch
@@ -17,11 +17,9 @@ Fixes: eb64e2923a886 ("bgmac: leave interrupts disabled as long as there is work
drivers/net/ethernet/broadcom/bgmac.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c
-index de77d3a..21e3c38 100644
--- a/drivers/net/ethernet/broadcom/bgmac.c
+++ b/drivers/net/ethernet/broadcom/bgmac.c
-@@ -1260,7 +1260,7 @@ static int bgmac_poll(struct napi_struct *napi, int weight)
+@@ -1260,7 +1260,7 @@ static int bgmac_poll(struct napi_struct
/* Poll again if more events arrived in the meantime */
if (bgmac_read(bgmac, BGMAC_INT_STATUS) & (BGMAC_IS_TX0 | BGMAC_IS_RX))
@@ -30,6 +28,3 @@ index de77d3a..21e3c38 100644
if (handled < weight) {
napi_complete(napi);
---
-1.8.4.5
-
diff --git a/target/linux/generic/patches-4.0/102-ehci_hcd_ignore_oc.patch b/target/linux/generic/patches-4.0/102-ehci_hcd_ignore_oc.patch
index fbe7568578..4da579cedc 100644
--- a/target/linux/generic/patches-4.0/102-ehci_hcd_ignore_oc.patch
+++ b/target/linux/generic/patches-4.0/102-ehci_hcd_ignore_oc.patch
@@ -31,7 +31,7 @@ Signed-off-by: Florian Fainelli <florian@openwrt.org>
&ehci->regs->intr_enable); /* Turn On Interrupts */
--- a/drivers/usb/host/ehci-hub.c
+++ b/drivers/usb/host/ehci-hub.c
-@@ -630,7 +630,7 @@ ehci_hub_status_data (struct usb_hcd *hc
+@@ -633,7 +633,7 @@ ehci_hub_status_data (struct usb_hcd *hc
* always set, seem to clear PORT_OCC and PORT_CSC when writing to
* PORT_POWER; that's surprising, but maybe within-spec.
*/
@@ -40,7 +40,7 @@ Signed-off-by: Florian Fainelli <florian@openwrt.org>
mask = PORT_CSC | PORT_PEC | PORT_OCC;
else
mask = PORT_CSC | PORT_PEC;
-@@ -992,7 +992,7 @@ int ehci_hub_control(
+@@ -995,7 +995,7 @@ int ehci_hub_control(
if (temp & PORT_PEC)
status |= USB_PORT_STAT_C_ENABLE << 16;
diff --git a/target/linux/generic/patches-4.0/304-mips_disable_fpu.patch b/target/linux/generic/patches-4.0/304-mips_disable_fpu.patch
index 2485830fdd..080afa3364 100644
--- a/target/linux/generic/patches-4.0/304-mips_disable_fpu.patch
+++ b/target/linux/generic/patches-4.0/304-mips_disable_fpu.patch
@@ -49,7 +49,7 @@ v2: incorporated changes suggested by Jonas Gorski
select OF
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
-@@ -286,7 +286,7 @@ OBJCOPYFLAGS += --remove-section=.regin
+@@ -292,7 +292,7 @@ OBJCOPYFLAGS += --remove-section=.regin
head-y := arch/mips/kernel/head.o
libs-y += arch/mips/lib/
@@ -60,7 +60,7 @@ v2: incorporated changes suggested by Jonas Gorski
core-y += arch/mips/
--- a/arch/mips/include/asm/fpu.h
+++ b/arch/mips/include/asm/fpu.h
-@@ -211,8 +211,10 @@ static inline int init_fpu(void)
+@@ -212,8 +212,10 @@ static inline int init_fpu(void)
/* Restore FRE */
write_c0_config5(config5);
enable_fpu_hazard();
diff --git a/target/linux/generic/patches-4.0/411-mtd-partial_eraseblock_write.patch b/target/linux/generic/patches-4.0/411-mtd-partial_eraseblock_write.patch
index 94aa6aecd0..ada7cc1072 100644
--- a/target/linux/generic/patches-4.0/411-mtd-partial_eraseblock_write.patch
+++ b/target/linux/generic/patches-4.0/411-mtd-partial_eraseblock_write.patch
@@ -97,7 +97,7 @@
if (instr->fail_addr != MTD_FAIL_ADDR_UNKNOWN)
instr->fail_addr -= part->offset;
instr->addr -= part->offset;
-@@ -513,18 +581,21 @@ static struct mtd_part *allocate_partiti
+@@ -513,17 +581,20 @@ static struct mtd_part *allocate_partiti
if ((slave->mtd.flags & MTD_WRITEABLE) &&
mtd_mod_by_eb(slave->offset, &slave->mtd)) {
/* Doesn't start on a boundary of major erase size */
@@ -127,7 +127,6 @@
}
slave->mtd.ecclayout = master->ecclayout;
- slave->mtd.ecc_step_size = master->ecc_step_size;
--- a/include/linux/mtd/mtd.h
+++ b/include/linux/mtd/mtd.h
@@ -55,6 +55,10 @@ struct erase_info {
diff --git a/target/linux/generic/patches-4.0/650-pppoe_header_pad.patch b/target/linux/generic/patches-4.0/650-pppoe_header_pad.patch
index a89a9f3b74..3b4978be84 100644
--- a/target/linux/generic/patches-4.0/650-pppoe_header_pad.patch
+++ b/target/linux/generic/patches-4.0/650-pppoe_header_pad.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/ppp/pppoe.c
+++ b/drivers/net/ppp/pppoe.c
-@@ -850,7 +850,7 @@ static int pppoe_sendmsg(struct kiocb *i
+@@ -869,7 +869,7 @@ static int pppoe_sendmsg(struct kiocb *i
goto end;
@@ -9,7 +9,7 @@
0, GFP_KERNEL);
if (!skb) {
error = -ENOMEM;
-@@ -858,7 +858,7 @@ static int pppoe_sendmsg(struct kiocb *i
+@@ -877,7 +877,7 @@ static int pppoe_sendmsg(struct kiocb *i
}
/* Reserve space for headers. */
diff --git a/target/linux/generic/patches-4.0/653-disable_netlink_trim.patch b/target/linux/generic/patches-4.0/653-disable_netlink_trim.patch
index 68b8d5834d..f3231db093 100644
--- a/target/linux/generic/patches-4.0/653-disable_netlink_trim.patch
+++ b/target/linux/generic/patches-4.0/653-disable_netlink_trim.patch
@@ -1,6 +1,6 @@
--- a/net/netlink/af_netlink.c
+++ b/net/netlink/af_netlink.c
-@@ -1712,27 +1712,7 @@ void netlink_detachskb(struct sock *sk,
+@@ -1710,27 +1710,7 @@ void netlink_detachskb(struct sock *sk,
static struct sk_buff *netlink_trim(struct sk_buff *skb, gfp_t allocation)
{
diff --git a/target/linux/generic/patches-4.0/655-increase_skb_pad.patch b/target/linux/generic/patches-4.0/655-increase_skb_pad.patch
index e531716947..c4aee0701e 100644
--- a/target/linux/generic/patches-4.0/655-increase_skb_pad.patch
+++ b/target/linux/generic/patches-4.0/655-increase_skb_pad.patch
@@ -1,6 +1,6 @@
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -2026,7 +2026,7 @@ static inline int pskb_network_may_pull(
+@@ -2027,7 +2027,7 @@ static inline int pskb_network_may_pull(
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
*/
#ifndef NET_SKB_PAD
diff --git a/target/linux/generic/patches-4.0/656-skb_reduce_truesize-helper.patch b/target/linux/generic/patches-4.0/656-skb_reduce_truesize-helper.patch
index 6a2fb89615..72e5c26d80 100644
--- a/target/linux/generic/patches-4.0/656-skb_reduce_truesize-helper.patch
+++ b/target/linux/generic/patches-4.0/656-skb_reduce_truesize-helper.patch
@@ -14,7 +14,7 @@ when needed.
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -2071,6 +2071,24 @@ static inline void pskb_trim_unique(stru
+@@ -2072,6 +2072,24 @@ static inline void pskb_trim_unique(stru
BUG_ON(err);
}
diff --git a/target/linux/generic/patches-4.0/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch b/target/linux/generic/patches-4.0/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
index 5be1a5225b..74477607a7 100644
--- a/target/linux/generic/patches-4.0/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
+++ b/target/linux/generic/patches-4.0/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
@@ -173,7 +173,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
/*
* Allocate a dst for local (unicast / anycast) address.
*/
-@@ -2427,7 +2460,8 @@ static int rtm_to_fib6_config(struct sk_
+@@ -2428,7 +2461,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)
-@@ -2630,6 +2664,9 @@ static int rt6_fill_node(struct net *net
+@@ -2631,6 +2665,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;
-@@ -2884,6 +2921,8 @@ static int ip6_route_dev_notify(struct n
+@@ -2885,6 +2922,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
-@@ -3100,6 +3139,17 @@ static int __net_init ip6_route_net_init
+@@ -3101,6 +3140,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;
-@@ -3118,6 +3168,8 @@ out:
+@@ -3119,6 +3169,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:
-@@ -3135,6 +3187,7 @@ static void __net_exit ip6_route_net_exi
+@@ -3136,6 +3188,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);
}
-@@ -3231,6 +3284,9 @@ int __init ip6_route_init(void)
+@@ -3232,6 +3285,9 @@ int __init ip6_route_init(void)
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/patches-4.0/721-phy_packets.patch b/target/linux/generic/patches-4.0/721-phy_packets.patch
index 0f9e2f1c12..f3ee62661e 100644
--- a/target/linux/generic/patches-4.0/721-phy_packets.patch
+++ b/target/linux/generic/patches-4.0/721-phy_packets.patch
@@ -41,7 +41,7 @@
*/
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -2057,6 +2057,10 @@ static inline int pskb_trim(struct sk_bu
+@@ -2058,6 +2058,10 @@ static inline int pskb_trim(struct sk_bu
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
}
@@ -52,7 +52,7 @@
/**
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
* @skb: buffer to alter
-@@ -2183,16 +2187,6 @@ static inline struct sk_buff *dev_alloc_
+@@ -2184,16 +2188,6 @@ static inline struct sk_buff *dev_alloc_
}
@@ -121,7 +121,7 @@
#include <net/protocol.h>
#include <net/dst.h>
-@@ -550,6 +551,22 @@ struct sk_buff *__napi_alloc_skb(struct
+@@ -568,6 +569,22 @@ struct sk_buff *__napi_alloc_skb(struct
}
EXPORT_SYMBOL(__napi_alloc_skb);
diff --git a/target/linux/generic/patches-4.0/820-usb_add_usb_find_device_by_name.patch b/target/linux/generic/patches-4.0/820-usb_add_usb_find_device_by_name.patch
index 53bff5ea90..96cadf3fb7 100644
--- a/target/linux/generic/patches-4.0/820-usb_add_usb_find_device_by_name.patch
+++ b/target/linux/generic/patches-4.0/820-usb_add_usb_find_device_by_name.patch
@@ -74,7 +74,7 @@
* @dev: device the buffer will be used with
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
-@@ -695,6 +695,7 @@ static inline bool usb_device_no_sg_cons
+@@ -721,6 +721,7 @@ static inline bool usb_device_no_sg_cons
return udev && udev->bus && udev->bus->no_sg_constraint;
}