From: John Crispin Date: Sun, 20 Jul 2014 17:31:15 +0000 (+0000) Subject: kernel: refresh 3.10 patches X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=7de26eb93a1dd9b7b3360d5fabc89242e6de35d8 kernel: refresh 3.10 patches Signed-off-by: John Crispin SVN-Revision: 41777 --- diff --git a/target/linux/ar71xx/patches-3.10/722-MIPS-ath79-add-airGateway-support.patch b/target/linux/ar71xx/patches-3.10/722-MIPS-ath79-add-airGateway-support.patch index d26cc2c153..d64007dcf7 100644 --- a/target/linux/ar71xx/patches-3.10/722-MIPS-ath79-add-airGateway-support.patch +++ b/target/linux/ar71xx/patches-3.10/722-MIPS-ath79-add-airGateway-support.patch @@ -1,5 +1,5 @@ ---- a/arch/mips/ath79/mach-ubnt-xm.c 2014-07-18 02:43:23.110693216 +0000 -+++ b/arch/mips/ath79/mach-ubnt-xm.c 2014-07-18 03:20:28.542701485 +0000 +--- a/arch/mips/ath79/mach-ubnt-xm.c ++++ b/arch/mips/ath79/mach-ubnt-xm.c @@ -17,9 +17,11 @@ #include #include @@ -63,8 +63,8 @@ +MIPS_MACHINE(ATH79_MACH_UBNT_AIRGW, "UBNT-AGW", "Ubiquiti AirGateway", + ubnt_airgateway_setup); + ---- a/arch/mips/ath79/machtypes.h 2014-07-18 02:45:30.590693688 +0000 -+++ b/arch/mips/ath79/machtypes.h 2014-07-18 02:51:02.490694922 +0000 +--- a/arch/mips/ath79/machtypes.h ++++ b/arch/mips/ath79/machtypes.h @@ -143,6 +143,7 @@ enum ath79_mach_type { ATH79_MACH_TL_WR842N_V2, /* TP-LINK TL-WR842N/ND v2 */ ATH79_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */ diff --git a/target/linux/ar71xx/patches-3.10/723-MIPS-ath79-add-om5p-support.patch b/target/linux/ar71xx/patches-3.10/723-MIPS-ath79-add-om5p-support.patch index 6ff82d89b9..e5ce232b89 100644 --- a/target/linux/ar71xx/patches-3.10/723-MIPS-ath79-add-om5p-support.patch +++ b/target/linux/ar71xx/patches-3.10/723-MIPS-ath79-add-om5p-support.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/machtypes.h +++ b/arch/mips/ath79/machtypes.h -@@ -70,6 +70,7 @@ enum ath79_mach_type { +@@ -76,6 +76,7 @@ enum ath79_mach_type { ATH79_MACH_OM2P_LC, /* OpenMesh OM2P-LC */ ATH79_MACH_OM2Pv2, /* OpenMesh OM2Pv2 */ ATH79_MACH_OM2P, /* OpenMesh OM2P */ @@ -10,7 +10,7 @@ ATH79_MACH_RB_411, /* MikroTik RouterBOARD 411/411A/411AH */ --- a/arch/mips/ath79/Kconfig +++ b/arch/mips/ath79/Kconfig -@@ -511,6 +511,15 @@ config ATH79_MACH_OM2P +@@ -587,6 +587,15 @@ config ATH79_MACH_OM2P select ATH79_DEV_M25P80 select ATH79_DEV_WMAC @@ -28,7 +28,7 @@ select SOC_AR934X --- a/arch/mips/ath79/Makefile +++ b/arch/mips/ath79/Makefile -@@ -75,6 +75,7 @@ obj-$(CONFIG_ATH79_MACH_MZK_W04NU) += ma +@@ -81,6 +81,7 @@ obj-$(CONFIG_ATH79_MACH_MZK_W04NU) += ma obj-$(CONFIG_ATH79_MACH_MZK_W300NH) += mach-mzk-w300nh.o obj-$(CONFIG_ATH79_MACH_NBG460N) += mach-nbg460n.o obj-$(CONFIG_ATH79_MACH_OM2P) += mach-om2p.o diff --git a/target/linux/ar71xx/patches-3.10/902-unaligned_access_hacks.patch b/target/linux/ar71xx/patches-3.10/902-unaligned_access_hacks.patch index 17c6be717c..121276a6a1 100644 --- a/target/linux/ar71xx/patches-3.10/902-unaligned_access_hacks.patch +++ b/target/linux/ar71xx/patches-3.10/902-unaligned_access_hacks.patch @@ -328,7 +328,7 @@ --- a/net/ipv6/ip6_tunnel.c +++ b/net/ipv6/ip6_tunnel.c -@@ -1272,9 +1272,9 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str +@@ -1273,9 +1273,9 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str dsfield = ipv6_get_dsfield(ipv6h); if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS) @@ -886,7 +886,7 @@ tpi->seq = 0; --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c -@@ -3625,14 +3625,16 @@ static bool tcp_parse_aligned_timestamp( +@@ -3624,14 +3624,16 @@ static bool tcp_parse_aligned_timestamp( { const __be32 *ptr = (const __be32 *)(th + 1); diff --git a/target/linux/generic/patches-3.10/140-revert_usb_unbind_interfaces.patch b/target/linux/generic/patches-3.10/140-revert_usb_unbind_interfaces.patch index aa1ccb31ed..db1bc1ae19 100644 --- a/target/linux/generic/patches-3.10/140-revert_usb_unbind_interfaces.patch +++ b/target/linux/generic/patches-3.10/140-revert_usb_unbind_interfaces.patch @@ -195,7 +195,7 @@ Date: Wed Jul 9 12:08:23 2014 +0200 usb_autosuspend_device(udev); --- a/drivers/usb/core/usb.h +++ b/drivers/usb/core/usb.h -@@ -55,7 +55,7 @@ extern int usb_match_one_id_intf(struct +@@ -55,7 +55,7 @@ extern int usb_match_one_id_intf(struct extern int usb_match_device(struct usb_device *dev, const struct usb_device_id *id); extern void usb_forced_unbind_intf(struct usb_interface *intf); diff --git a/target/linux/generic/patches-3.10/412-mtd-partial_eraseblock_unlock.patch b/target/linux/generic/patches-3.10/412-mtd-partial_eraseblock_unlock.patch index 134f65715e..87c8257fe1 100644 --- a/target/linux/generic/patches-3.10/412-mtd-partial_eraseblock_unlock.patch +++ b/target/linux/generic/patches-3.10/412-mtd-partial_eraseblock_unlock.patch @@ -1,6 +1,6 @@ --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c -@@ -331,7 +331,14 @@ static int part_lock(struct mtd_info *mt +@@ -332,7 +332,14 @@ static int part_lock(struct mtd_info *mt static int part_unlock(struct mtd_info *mtd, loff_t ofs, uint64_t len) { struct mtd_part *part = PART(mtd); diff --git a/target/linux/generic/patches-3.10/550-ubifs-symlink-xattr-support.patch b/target/linux/generic/patches-3.10/550-ubifs-symlink-xattr-support.patch index 0235340aa8..8b86cf8641 100644 --- a/target/linux/generic/patches-3.10/550-ubifs-symlink-xattr-support.patch +++ b/target/linux/generic/patches-3.10/550-ubifs-symlink-xattr-support.patch @@ -1,6 +1,6 @@ --- a/fs/ubifs/file.c +++ b/fs/ubifs/file.c -@@ -1576,6 +1576,10 @@ const struct inode_operations ubifs_syml +@@ -1575,6 +1575,10 @@ const struct inode_operations ubifs_syml .follow_link = ubifs_follow_link, .setattr = ubifs_setattr, .getattr = ubifs_getattr, diff --git a/target/linux/generic/patches-3.10/645-bridge_multicast_to_unicast.patch b/target/linux/generic/patches-3.10/645-bridge_multicast_to_unicast.patch index cb5b760b3b..f5b781bb17 100644 --- a/target/linux/generic/patches-3.10/645-bridge_multicast_to_unicast.patch +++ b/target/linux/generic/patches-3.10/645-bridge_multicast_to_unicast.patch @@ -195,7 +195,7 @@ } #endif -@@ -1351,6 +1376,7 @@ static int br_multicast_ipv4_rcv(struct +@@ -1351,6 +1376,7 @@ static int br_multicast_ipv4_rcv(struct struct net_bridge_port *port, struct sk_buff *skb) { @@ -203,7 +203,7 @@ struct sk_buff *skb2 = skb; const struct iphdr *iph; struct igmphdr *ih; -@@ -1426,7 +1452,7 @@ static int br_multicast_ipv4_rcv(struct +@@ -1426,7 +1452,7 @@ static int br_multicast_ipv4_rcv(struct case IGMP_HOST_MEMBERSHIP_REPORT: case IGMPV2_HOST_MEMBERSHIP_REPORT: BR_INPUT_SKB_CB(skb)->mrouters_only = 1; @@ -212,7 +212,7 @@ break; case IGMPV3_HOST_MEMBERSHIP_REPORT: err = br_ip4_multicast_igmp3_report(br, port, skb2); -@@ -1435,7 +1461,7 @@ static int br_multicast_ipv4_rcv(struct +@@ -1435,7 +1461,7 @@ static int br_multicast_ipv4_rcv(struct err = br_ip4_multicast_query(br, port, skb2); break; case IGMP_HOST_LEAVE_MESSAGE: @@ -221,7 +221,7 @@ break; } -@@ -1452,6 +1478,7 @@ static int br_multicast_ipv6_rcv(struct +@@ -1452,6 +1478,7 @@ static int br_multicast_ipv6_rcv(struct struct net_bridge_port *port, struct sk_buff *skb) { @@ -229,7 +229,7 @@ struct sk_buff *skb2; const struct ipv6hdr *ip6h; u8 icmp6_type; -@@ -1557,7 +1584,8 @@ static int br_multicast_ipv6_rcv(struct +@@ -1557,7 +1584,8 @@ static int br_multicast_ipv6_rcv(struct } mld = (struct mld_msg *)skb_transport_header(skb2); BR_INPUT_SKB_CB(skb)->mrouters_only = 1; @@ -239,7 +239,7 @@ break; } case ICMPV6_MLD2_REPORT: -@@ -1574,7 +1602,7 @@ static int br_multicast_ipv6_rcv(struct +@@ -1574,7 +1602,7 @@ static int br_multicast_ipv6_rcv(struct goto out; } mld = (struct mld_msg *)skb_transport_header(skb2); diff --git a/target/linux/generic/patches-3.10/653-disable_netlink_trim.patch b/target/linux/generic/patches-3.10/653-disable_netlink_trim.patch index b3a6597a57..7944d97666 100644 --- a/target/linux/generic/patches-3.10/653-disable_netlink_trim.patch +++ b/target/linux/generic/patches-3.10/653-disable_netlink_trim.patch @@ -1,6 +1,6 @@ --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c -@@ -1503,27 +1503,7 @@ void netlink_detachskb(struct sock *sk, +@@ -1570,27 +1570,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-3.10/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch b/target/linux/generic/patches-3.10/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch index c34fd12258..a8ab127b35 100644 --- a/target/linux/generic/patches-3.10/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch +++ b/target/linux/generic/patches-3.10/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch @@ -80,7 +80,7 @@ Signed-off-by: Steven Barth */ #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt -@@ -79,11 +81,9 @@ static bool log_ecn_error = true; +@@ -80,11 +82,9 @@ static bool log_ecn_error = true; module_param(log_ecn_error, bool, 0644); MODULE_PARM_DESC(log_ecn_error, "Log packets received with corrupted ECN"); @@ -94,7 +94,7 @@ Signed-off-by: Steven Barth } static int ip6_tnl_dev_init(struct net_device *dev); -@@ -172,15 +172,24 @@ EXPORT_SYMBOL_GPL(ip6_tnl_dst_store); +@@ -173,15 +173,24 @@ EXPORT_SYMBOL_GPL(ip6_tnl_dst_store); static struct ip6_tnl * ip6_tnl_lookup(struct net *net, const struct in6_addr *remote, const struct in6_addr *local) { @@ -123,7 +123,7 @@ Signed-off-by: Steven Barth } t = rcu_dereference(ip6n->tnls_wc[0]); if (t && (t->dev->flags & IFF_UP)) -@@ -210,7 +219,7 @@ ip6_tnl_bucket(struct ip6_tnl_net *ip6n, +@@ -211,7 +220,7 @@ ip6_tnl_bucket(struct ip6_tnl_net *ip6n, if (!ipv6_addr_any(remote) || !ipv6_addr_any(local)) { prio = 1; @@ -132,7 +132,7 @@ Signed-off-by: Steven Barth } return &ip6n->tnls[prio][h]; } -@@ -377,6 +386,12 @@ ip6_tnl_dev_uninit(struct net_device *de +@@ -378,6 +387,12 @@ ip6_tnl_dev_uninit(struct net_device *de struct net *net = dev_net(dev); struct ip6_tnl_net *ip6n = net_generic(net, ip6_tnl_net_id); @@ -145,7 +145,7 @@ Signed-off-by: Steven Barth if (dev == ip6n->fb_tnl_dev) RCU_INIT_POINTER(ip6n->tnls_wc[0], NULL); else -@@ -760,6 +775,108 @@ int ip6_tnl_rcv_ctl(struct ip6_tnl *t, +@@ -761,6 +776,108 @@ int ip6_tnl_rcv_ctl(struct ip6_tnl *t, } EXPORT_SYMBOL_GPL(ip6_tnl_rcv_ctl); @@ -254,7 +254,7 @@ Signed-off-by: Steven Barth /** * ip6_tnl_rcv - decapsulate IPv6 packet and retransmit it locally * @skb: received socket buffer -@@ -806,6 +923,26 @@ static int ip6_tnl_rcv(struct sk_buff *s +@@ -807,6 +924,26 @@ static int ip6_tnl_rcv(struct sk_buff *s skb->protocol = htons(protocol); skb->pkt_type = PACKET_HOST; memset(skb->cb, 0, sizeof(struct inet6_skb_parm)); @@ -281,7 +281,7 @@ Signed-off-by: Steven Barth __skb_tunnel_rx(skb, t->dev); -@@ -1057,6 +1194,7 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str +@@ -1058,6 +1195,7 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str __u8 dsfield; __u32 mtu; int err; @@ -289,7 +289,7 @@ Signed-off-by: Steven Barth if ((t->parms.proto != IPPROTO_IPIP && t->parms.proto != 0) || !ip6_tnl_xmit_ctl(t)) -@@ -1076,6 +1214,18 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str +@@ -1077,6 +1215,18 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK) fl6.flowi6_mark = skb->mark; @@ -308,7 +308,7 @@ Signed-off-by: Steven Barth err = ip6_tnl_xmit2(skb, dev, dsfield, &fl6, encap_limit, &mtu); if (err != 0) { /* XXX: send ICMP error even if DF is not set. */ -@@ -1244,6 +1394,14 @@ ip6_tnl_change(struct ip6_tnl *t, const +@@ -1245,6 +1395,14 @@ ip6_tnl_change(struct ip6_tnl *t, const t->parms.flowinfo = p->flowinfo; t->parms.link = p->link; t->parms.proto = p->proto; @@ -323,7 +323,7 @@ Signed-off-by: Steven Barth ip6_tnl_dst_reset(t); ip6_tnl_link_config(t); return 0; -@@ -1274,6 +1432,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_ +@@ -1275,6 +1433,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_ p->flowinfo = u->flowinfo; p->link = u->link; p->proto = u->proto; @@ -331,7 +331,7 @@ Signed-off-by: Steven Barth memcpy(p->name, u->name, sizeof(u->name)); } -@@ -1543,6 +1702,15 @@ static int ip6_tnl_validate(struct nlatt +@@ -1544,6 +1703,15 @@ static int ip6_tnl_validate(struct nlatt return 0; } @@ -347,7 +347,7 @@ Signed-off-by: Steven Barth static void ip6_tnl_netlink_parms(struct nlattr *data[], struct __ip6_tnl_parm *parms) { -@@ -1576,6 +1744,46 @@ static void ip6_tnl_netlink_parms(struct +@@ -1577,6 +1745,46 @@ static void ip6_tnl_netlink_parms(struct if (data[IFLA_IPTUN_PROTO]) parms->proto = nla_get_u8(data[IFLA_IPTUN_PROTO]); @@ -394,7 +394,7 @@ Signed-off-by: Steven Barth } static int ip6_tnl_newlink(struct net *src_net, struct net_device *dev, -@@ -1628,6 +1836,12 @@ static void ip6_tnl_dellink(struct net_d +@@ -1629,6 +1837,12 @@ static void ip6_tnl_dellink(struct net_d static size_t ip6_tnl_get_size(const struct net_device *dev) { @@ -407,7 +407,7 @@ Signed-off-by: Steven Barth return /* IFLA_IPTUN_LINK */ nla_total_size(4) + -@@ -1645,6 +1859,24 @@ static size_t ip6_tnl_get_size(const str +@@ -1646,6 +1860,24 @@ static size_t ip6_tnl_get_size(const str nla_total_size(4) + /* IFLA_IPTUN_PROTO */ nla_total_size(1) + @@ -432,7 +432,7 @@ Signed-off-by: Steven Barth 0; } -@@ -1652,6 +1884,9 @@ static int ip6_tnl_fill_info(struct sk_b +@@ -1653,6 +1885,9 @@ static int ip6_tnl_fill_info(struct sk_b { struct ip6_tnl *tunnel = netdev_priv(dev); struct __ip6_tnl_parm *parm = &tunnel->parms; @@ -442,7 +442,7 @@ Signed-off-by: Steven Barth if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) || nla_put(skb, IFLA_IPTUN_LOCAL, sizeof(struct in6_addr), -@@ -1662,8 +1897,27 @@ static int ip6_tnl_fill_info(struct sk_b +@@ -1663,8 +1898,27 @@ static int ip6_tnl_fill_info(struct sk_b nla_put_u8(skb, IFLA_IPTUN_ENCAP_LIMIT, parm->encap_limit) || nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) || nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) || @@ -471,7 +471,7 @@ Signed-off-by: Steven Barth return 0; nla_put_failure: -@@ -1679,6 +1933,7 @@ static const struct nla_policy ip6_tnl_p +@@ -1680,6 +1934,7 @@ static const struct nla_policy ip6_tnl_p [IFLA_IPTUN_FLOWINFO] = { .type = NLA_U32 }, [IFLA_IPTUN_FLAGS] = { .type = NLA_U32 }, [IFLA_IPTUN_PROTO] = { .type = NLA_U8 }, diff --git a/target/linux/generic/patches-3.10/810-pci_disable_common_quirks.patch b/target/linux/generic/patches-3.10/810-pci_disable_common_quirks.patch index ff99832b99..05301c2166 100644 --- a/target/linux/generic/patches-3.10/810-pci_disable_common_quirks.patch +++ b/target/linux/generic/patches-3.10/810-pci_disable_common_quirks.patch @@ -40,9 +40,9 @@ /* * Some BIOS implementations leave the Intel GPU interrupts enabled, * even though no one is handling them (f.e. i915 driver is never loaded). -@@ -2931,6 +2935,8 @@ static void disable_igfx_irq(struct pci_ - DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0102, disable_igfx_irq); +@@ -2932,6 +2936,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq); + DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq); +#endif /* !CONFIG_PCI_DISABLE_COMMON_QUIRKS */ + diff --git a/target/linux/generic/patches-3.10/811-pci_disable_usb_common_quirks.patch b/target/linux/generic/patches-3.10/811-pci_disable_usb_common_quirks.patch index 59eb97bbcf..052999829e 100644 --- a/target/linux/generic/patches-3.10/811-pci_disable_usb_common_quirks.patch +++ b/target/linux/generic/patches-3.10/811-pci_disable_usb_common_quirks.patch @@ -39,7 +39,7 @@ static inline int io_type_enabled(struct pci_dev *pdev, unsigned int mask) { u16 cmd; -@@ -974,3 +989,4 @@ static void quirk_usb_early_handoff(stru +@@ -987,3 +1002,4 @@ static void quirk_usb_early_handoff(stru } DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_SERIAL_USB, 8, quirk_usb_early_handoff); diff --git a/target/linux/generic/patches-3.10/902-debloat_proc.patch b/target/linux/generic/patches-3.10/902-debloat_proc.patch index c147973c6f..6f551877da 100644 --- a/target/linux/generic/patches-3.10/902-debloat_proc.patch +++ b/target/linux/generic/patches-3.10/902-debloat_proc.patch @@ -173,7 +173,7 @@ goto err; --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -2842,6 +2842,8 @@ static __net_initdata struct pernet_oper +@@ -2891,6 +2891,8 @@ static __net_initdata struct pernet_oper static int __init proto_init(void) {