aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/kernel-version.mk4
-rw-r--r--target/linux/generic/config-3.1812
-rw-r--r--target/linux/generic/patches-3.18/201-extra_optimization.patch2
-rw-r--r--target/linux/generic/patches-3.18/202-reduce_module_size.patch2
-rw-r--r--target/linux/generic/patches-3.18/644-bridge_optimize_netfilter_hooks.patch6
-rw-r--r--target/linux/generic/patches-3.18/645-bridge_multicast_to_unicast.patch32
-rw-r--r--target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch28
-rw-r--r--target/linux/generic/patches-3.18/700-swconfig.patch2
-rw-r--r--target/linux/generic/patches-3.18/863-gpiommc.patch2
-rw-r--r--target/linux/generic/patches-3.18/950-vm_exports.patch2
10 files changed, 50 insertions, 42 deletions
diff --git a/include/kernel-version.mk b/include/kernel-version.mk
index 5f0b84a0c0..e13cd08943 100644
--- a/include/kernel-version.mk
+++ b/include/kernel-version.mk
@@ -7,14 +7,14 @@ LINUX_VERSION-3.8 = .13
LINUX_VERSION-3.10 = .58
LINUX_VERSION-3.13 = .7
LINUX_VERSION-3.14 = .18
-LINUX_VERSION-3.18 = -rc4
+LINUX_VERSION-3.18 = -rc6
LINUX_KERNEL_MD5SUM-3.3.8 = f1058f64eed085deb44f10cee8541d50
LINUX_KERNEL_MD5SUM-3.8.13 = 2af19d06cd47ec459519159cdd10542d
LINUX_KERNEL_MD5SUM-3.10.58 = 3ff3478b6351143cef22d4b81cf48b01
LINUX_KERNEL_MD5SUM-3.13.7 = 370adced5e5c1cb1d0d621c2dae2723f
LINUX_KERNEL_MD5SUM-3.14.18 = 3b002a06d0964d8101abec768c2d4eef
-LINUX_KERNEL_MD5SUM-3.18-rc4 = 5bf4da5308bafbfb7620bb685fc1ecba
+LINUX_KERNEL_MD5SUM-3.18-rc6 = 892b929629ba8af764eeffc394654329
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))
diff --git a/target/linux/generic/config-3.18 b/target/linux/generic/config-3.18
index ad8ea95e9d..cfee63e2f9 100644
--- a/target/linux/generic/config-3.18
+++ b/target/linux/generic/config-3.18
@@ -146,6 +146,7 @@ CONFIG_ARCH_FLATMEM_ENABLE=y
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
# CONFIG_ARCH_HI3xxx is not set
# CONFIG_ARCH_HIGHBANK is not set
+# CONFIG_ARCH_HISI is not set
# CONFIG_ARCH_INTEGRATOR is not set
# CONFIG_ARCH_IOP13XX is not set
# CONFIG_ARCH_IOP32X is not set
@@ -157,7 +158,10 @@ CONFIG_ARCH_FLATMEM_ENABLE=y
# CONFIG_ARCH_KIRKWOOD is not set
# CONFIG_ARCH_KS8695 is not set
# CONFIG_ARCH_LPC32XX is not set
+# CONFIG_ARCH_MEDIATEK is not set
+# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MMP is not set
+# CONFIG_ARCH_MSM is not set
# CONFIG_ARCH_MSM_DT is not set
# CONFIG_ARCH_MSM_NODT is not set
# CONFIG_ARCH_MULTIPLATFORM is not set
@@ -181,6 +185,7 @@ CONFIG_ARCH_FLATMEM_ENABLE=y
# CONFIG_ARCH_PNX4008 is not set
# CONFIG_ARCH_PRIMA2 is not set
# CONFIG_ARCH_PXA is not set
+# CONFIG_ARCH_QCOM is not set
# CONFIG_ARCH_REALVIEW is not set
# CONFIG_ARCH_ROCKCHIP is not set
# CONFIG_ARCH_RPC is not set
@@ -1070,6 +1075,7 @@ CONFIG_FILE_LOCKING=y
CONFIG_FLATMEM=y
CONFIG_FLATMEM_MANUAL=y
CONFIG_FLAT_NODE_MEM_MAP=y
+# CONFIG_FM10K is not set
# CONFIG_FMC is not set
# CONFIG_FORCEDETH is not set
CONFIG_FORCE_MAX_ZONEORDER=11
@@ -1079,6 +1085,7 @@ CONFIG_FRAME_WARN=1024
# CONFIG_FREEZER is not set
# CONFIG_FRONTSWAP is not set
# CONFIG_FSCACHE is not set
+# CONFIG_FSL_EDMA is not set
# CONFIG_FSL_XGMAC_MDIO is not set
CONFIG_FSNOTIFY=y
# CONFIG_FS_POSIX_ACL is not set
@@ -1598,7 +1605,6 @@ CONFIG_IP_MULTIPLE_TABLES=y
# CONFIG_IP_NF_MATCH_ECN is not set
# CONFIG_IP_NF_MATCH_RPFILTER is not set
# CONFIG_IP_NF_MATCH_TTL is not set
-# CONFIG_IP_NF_NAT is not set
# CONFIG_IP_NF_QUEUE is not set
# CONFIG_IP_NF_RAW is not set
# CONFIG_IP_NF_SECURITY is not set
@@ -2207,6 +2213,7 @@ CONFIG_MTD_ROOTFS_ROOT_DEV=y
CONFIG_MTD_ROOTFS_SPLIT=y
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SM_COMMON is not set
+# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SPINAND_MT29F is not set
CONFIG_MTD_SPLIT=y
@@ -2232,6 +2239,7 @@ CONFIG_MTD_SPLIT_SQUASHFS_ROOT=y
# CONFIG_NATIONAL_PHY is not set
# CONFIG_NATSEMI is not set
# CONFIG_NAU7802 is not set
+# CONFIG_NBPFAXI_DMA is not set
# CONFIG_NCP_FS is not set
# CONFIG_NE2000 is not set
# CONFIG_NE2K_PCI is not set
@@ -2300,7 +2308,6 @@ CONFIG_NETDEV_1000=y
# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set
# CONFIG_NETFILTER_XT_MATCH_TIME is not set
# CONFIG_NETFILTER_XT_MATCH_U32 is not set
-# CONFIG_NETFILTER_XT_NAT is not set
# CONFIG_NETFILTER_XT_TARGET_AUDIT is not set
# CONFIG_NETFILTER_XT_TARGET_CHECKSUM is not set
# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
@@ -3793,6 +3800,7 @@ CONFIG_TEXTSEARCH=y
# CONFIG_TEXTSEARCH_FSM is not set
# CONFIG_TEXTSEARCH_KMP is not set
# CONFIG_THERMAL is not set
+# CONFIG_THERMAL_GOV_BANG_BANG is not set
# CONFIG_THERMAL_HWMON is not set
# CONFIG_THRUSTMASTER_FF is not set
# CONFIG_THUNDERBOLT is not set
diff --git a/target/linux/generic/patches-3.18/201-extra_optimization.patch b/target/linux/generic/patches-3.18/201-extra_optimization.patch
index ee231a64be..7ec93a47f4 100644
--- a/target/linux/generic/patches-3.18/201-extra_optimization.patch
+++ b/target/linux/generic/patches-3.18/201-extra_optimization.patch
@@ -1,6 +1,6 @@
--- a/Makefile
+++ b/Makefile
-@@ -611,9 +611,9 @@ include $(srctree)/arch/$(SRCARCH)/Makef
+@@ -612,9 +612,9 @@ include $(srctree)/arch/$(SRCARCH)/Makef
KBUILD_CFLAGS += $(call cc-option,-fno-delete-null-pointer-checks,)
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
diff --git a/target/linux/generic/patches-3.18/202-reduce_module_size.patch b/target/linux/generic/patches-3.18/202-reduce_module_size.patch
index 60ea5c2085..b98ea4e9d8 100644
--- a/target/linux/generic/patches-3.18/202-reduce_module_size.patch
+++ b/target/linux/generic/patches-3.18/202-reduce_module_size.patch
@@ -1,6 +1,6 @@
--- a/Makefile
+++ b/Makefile
-@@ -408,7 +408,7 @@ KBUILD_CFLAGS_KERNEL :=
+@@ -409,7 +409,7 @@ KBUILD_CFLAGS_KERNEL :=
KBUILD_AFLAGS := -D__ASSEMBLY__
KBUILD_AFLAGS_MODULE := -DMODULE
KBUILD_CFLAGS_MODULE := -DMODULE
diff --git a/target/linux/generic/patches-3.18/644-bridge_optimize_netfilter_hooks.patch b/target/linux/generic/patches-3.18/644-bridge_optimize_netfilter_hooks.patch
index bbfcaa402d..c876c2bce0 100644
--- a/target/linux/generic/patches-3.18/644-bridge_optimize_netfilter_hooks.patch
+++ b/target/linux/generic/patches-3.18/644-bridge_optimize_netfilter_hooks.patch
@@ -67,13 +67,13 @@
default:
--- a/net/bridge/br_multicast.c
+++ b/net/bridge/br_multicast.c
-@@ -815,7 +815,7 @@ static void __br_multicast_send_query(st
+@@ -814,7 +814,7 @@ static void __br_multicast_send_query(st
+
if (port) {
- __skb_push(skb, sizeof(struct ethhdr));
skb->dev = port->dev;
- NF_HOOK(NFPROTO_BRIDGE, NF_BR_LOCAL_OUT, skb, NULL, skb->dev,
+ BR_HOOK(NFPROTO_BRIDGE, NF_BR_LOCAL_OUT, skb, NULL, skb->dev,
- dev_queue_xmit);
+ br_dev_queue_push_xmit);
} else {
br_multicast_select_own_querier(br, ip, skb);
--- a/net/bridge/br_netfilter.c
diff --git a/target/linux/generic/patches-3.18/645-bridge_multicast_to_unicast.patch b/target/linux/generic/patches-3.18/645-bridge_multicast_to_unicast.patch
index 35ed5cb403..8d0da3c6e5 100644
--- a/target/linux/generic/patches-3.18/645-bridge_multicast_to_unicast.patch
+++ b/target/linux/generic/patches-3.18/645-bridge_multicast_to_unicast.patch
@@ -96,7 +96,7 @@
}
#endif
-@@ -966,6 +988,7 @@ static int br_ip4_multicast_igmp3_report
+@@ -965,6 +987,7 @@ static int br_ip4_multicast_igmp3_report
struct sk_buff *skb,
u16 vid)
{
@@ -104,7 +104,7 @@
struct igmpv3_report *ih;
struct igmpv3_grec *grec;
int i;
-@@ -1009,7 +1032,7 @@ static int br_ip4_multicast_igmp3_report
+@@ -1008,7 +1031,7 @@ static int br_ip4_multicast_igmp3_report
continue;
}
@@ -113,7 +113,7 @@
if (err)
break;
}
-@@ -1023,6 +1046,7 @@ static int br_ip6_multicast_mld2_report(
+@@ -1022,6 +1045,7 @@ static int br_ip6_multicast_mld2_report(
struct sk_buff *skb,
u16 vid)
{
@@ -121,7 +121,7 @@
struct icmp6hdr *icmp6h;
struct mld2_grec *grec;
int i;
-@@ -1071,7 +1095,7 @@ static int br_ip6_multicast_mld2_report(
+@@ -1070,7 +1094,7 @@ static int br_ip6_multicast_mld2_report(
}
err = br_ip6_multicast_add_group(br, port, &grec->grec_mca,
@@ -130,7 +130,7 @@
if (!err)
break;
}
-@@ -1408,7 +1432,8 @@ br_multicast_leave_group(struct net_brid
+@@ -1407,7 +1431,8 @@ br_multicast_leave_group(struct net_brid
struct net_bridge_port *port,
struct br_ip *group,
struct bridge_mcast_other_query *other_query,
@@ -140,7 +140,7 @@
{
struct net_bridge_mdb_htable *mdb;
struct net_bridge_mdb_entry *mp;
-@@ -1458,7 +1483,7 @@ br_multicast_leave_group(struct net_brid
+@@ -1457,7 +1482,7 @@ br_multicast_leave_group(struct net_brid
for (pp = &mp->ports;
(p = mlock_dereference(*pp, br)) != NULL;
pp = &p->next) {
@@ -149,7 +149,7 @@
continue;
rcu_assign_pointer(*pp, p->next);
-@@ -1492,7 +1517,7 @@ br_multicast_leave_group(struct net_brid
+@@ -1491,7 +1516,7 @@ br_multicast_leave_group(struct net_brid
for (p = mlock_dereference(mp->ports, br);
p != NULL;
p = mlock_dereference(p->next, br)) {
@@ -158,7 +158,7 @@
continue;
if (!hlist_unhashed(&p->mglist) &&
-@@ -1510,8 +1535,8 @@ out:
+@@ -1509,8 +1534,8 @@ out:
static void br_ip4_multicast_leave_group(struct net_bridge *br,
struct net_bridge_port *port,
@@ -169,7 +169,7 @@
{
struct br_ip br_group;
struct bridge_mcast_own_query *own_query;
-@@ -1526,14 +1551,14 @@ static void br_ip4_multicast_leave_group
+@@ -1525,14 +1550,14 @@ static void br_ip4_multicast_leave_group
br_group.vid = vid;
br_multicast_leave_group(br, port, &br_group, &br->ip4_other_query,
@@ -186,7 +186,7 @@
{
struct br_ip br_group;
struct bridge_mcast_own_query *own_query;
-@@ -1548,7 +1573,7 @@ static void br_ip6_multicast_leave_group
+@@ -1547,7 +1572,7 @@ static void br_ip6_multicast_leave_group
br_group.vid = vid;
br_multicast_leave_group(br, port, &br_group, &br->ip6_other_query,
@@ -195,7 +195,7 @@
}
#endif
-@@ -1557,6 +1582,7 @@ static int br_multicast_ipv4_rcv(struct
+@@ -1556,6 +1581,7 @@ static int br_multicast_ipv4_rcv(struct
struct sk_buff *skb,
u16 vid)
{
@@ -203,7 +203,7 @@
struct sk_buff *skb2 = skb;
const struct iphdr *iph;
struct igmphdr *ih;
-@@ -1630,7 +1656,7 @@ static int br_multicast_ipv4_rcv(struct
+@@ -1629,7 +1655,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, vid);
-@@ -1639,7 +1665,7 @@ static int br_multicast_ipv4_rcv(struct
+@@ -1638,7 +1664,7 @@ static int br_multicast_ipv4_rcv(struct
err = br_ip4_multicast_query(br, port, skb2, vid);
break;
case IGMP_HOST_LEAVE_MESSAGE:
@@ -221,7 +221,7 @@
break;
}
-@@ -1657,6 +1683,7 @@ static int br_multicast_ipv6_rcv(struct
+@@ -1656,6 +1682,7 @@ static int br_multicast_ipv6_rcv(struct
struct sk_buff *skb,
u16 vid)
{
@@ -229,7 +229,7 @@
struct sk_buff *skb2;
const struct ipv6hdr *ip6h;
u8 icmp6_type;
-@@ -1766,7 +1793,8 @@ static int br_multicast_ipv6_rcv(struct
+@@ -1765,7 +1792,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:
-@@ -1783,7 +1811,7 @@ static int br_multicast_ipv6_rcv(struct
+@@ -1782,7 +1810,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.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch b/target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
index 7e4e1e16cb..000665f047 100644
--- a/target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
+++ b/target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
@@ -132,7 +132,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
}
return &ip6n->tnls[prio][h];
}
-@@ -391,6 +400,12 @@ ip6_tnl_dev_uninit(struct net_device *de
+@@ -388,6 +397,12 @@ ip6_tnl_dev_uninit(struct net_device *de
struct net *net = t->net;
struct ip6_tnl_net *ip6n = net_generic(net, ip6_tnl_net_id);
@@ -145,7 +145,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
if (dev == ip6n->fb_tnl_dev)
RCU_INIT_POINTER(ip6n->tnls_wc[0], NULL);
else
-@@ -774,6 +789,108 @@ int ip6_tnl_rcv_ctl(struct ip6_tnl *t,
+@@ -771,6 +786,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 <cyrus@openwrt.org>
/**
* ip6_tnl_rcv - decapsulate IPv6 packet and retransmit it locally
* @skb: received socket buffer
-@@ -818,6 +935,26 @@ static int ip6_tnl_rcv(struct sk_buff *s
+@@ -815,6 +932,26 @@ static int ip6_tnl_rcv(struct sk_buff *s
skb_reset_network_header(skb);
skb->protocol = htons(protocol);
memset(skb->cb, 0, sizeof(struct inet6_skb_parm));
@@ -281,7 +281,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
__skb_tunnel_rx(skb, t->dev, t->net);
-@@ -1079,6 +1216,7 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str
+@@ -1076,6 +1213,7 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str
__u8 dsfield;
__u32 mtu;
int err;
@@ -289,7 +289,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
if ((t->parms.proto != IPPROTO_IPIP && t->parms.proto != 0) ||
!ip6_tnl_xmit_ctl(t))
-@@ -1098,6 +1236,18 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str
+@@ -1095,6 +1233,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 <cyrus@openwrt.org>
err = ip6_tnl_xmit2(skb, dev, dsfield, &fl6, encap_limit, &mtu);
if (err != 0) {
/* XXX: send ICMP error even if DF is not set. */
-@@ -1266,6 +1416,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
+@@ -1263,6 +1413,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 <cyrus@openwrt.org>
ip6_tnl_dst_reset(t);
ip6_tnl_link_config(t);
return 0;
-@@ -1296,6 +1454,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
+@@ -1293,6 +1451,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 <cyrus@openwrt.org>
memcpy(p->name, u->name, sizeof(u->name));
}
-@@ -1576,6 +1735,15 @@ static int ip6_tnl_validate(struct nlatt
+@@ -1568,6 +1727,15 @@ static int ip6_tnl_validate(struct nlatt
return 0;
}
@@ -347,7 +347,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
static void ip6_tnl_netlink_parms(struct nlattr *data[],
struct __ip6_tnl_parm *parms)
{
-@@ -1609,6 +1777,46 @@ static void ip6_tnl_netlink_parms(struct
+@@ -1601,6 +1769,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 <cyrus@openwrt.org>
}
static int ip6_tnl_newlink(struct net *src_net, struct net_device *dev,
-@@ -1661,6 +1869,12 @@ static void ip6_tnl_dellink(struct net_d
+@@ -1653,6 +1861,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 <cyrus@openwrt.org>
return
/* IFLA_IPTUN_LINK */
nla_total_size(4) +
-@@ -1678,6 +1892,24 @@ static size_t ip6_tnl_get_size(const str
+@@ -1670,6 +1884,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 <cyrus@openwrt.org>
0;
}
-@@ -1685,6 +1917,9 @@ static int ip6_tnl_fill_info(struct sk_b
+@@ -1677,6 +1909,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 <cyrus@openwrt.org>
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
nla_put(skb, IFLA_IPTUN_LOCAL, sizeof(struct in6_addr),
-@@ -1695,8 +1930,27 @@ static int ip6_tnl_fill_info(struct sk_b
+@@ -1687,8 +1922,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 <cyrus@openwrt.org>
return 0;
nla_put_failure:
-@@ -1712,6 +1966,7 @@ static const struct nla_policy ip6_tnl_p
+@@ -1704,6 +1958,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.18/700-swconfig.patch b/target/linux/generic/patches-3.18/700-swconfig.patch
index 9ab09095ea..6d24149330 100644
--- a/target/linux/generic/patches-3.18/700-swconfig.patch
+++ b/target/linux/generic/patches-3.18/700-swconfig.patch
@@ -29,7 +29,7 @@
obj-$(CONFIG_CICADA_PHY) += cicada.o
--- a/include/uapi/linux/Kbuild
+++ b/include/uapi/linux/Kbuild
-@@ -372,6 +372,7 @@ header-y += stddef.h
+@@ -375,6 +375,7 @@ header-y += stddef.h
header-y += string.h
header-y += suspend_ioctls.h
header-y += swab.h
diff --git a/target/linux/generic/patches-3.18/863-gpiommc.patch b/target/linux/generic/patches-3.18/863-gpiommc.patch
index cdd1aea576..2929333334 100644
--- a/target/linux/generic/patches-3.18/863-gpiommc.patch
+++ b/target/linux/generic/patches-3.18/863-gpiommc.patch
@@ -830,7 +830,7 @@
+be done automatically.
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -4265,6 +4265,11 @@ T: git git://linuxtv.org/anttip/media_tr
+@@ -4279,6 +4279,11 @@ T: git git://linuxtv.org/anttip/media_tr
S: Maintained
F: drivers/media/usb/hackrf/
diff --git a/target/linux/generic/patches-3.18/950-vm_exports.patch b/target/linux/generic/patches-3.18/950-vm_exports.patch
index 0291957bf0..eae65d2bff 100644
--- a/target/linux/generic/patches-3.18/950-vm_exports.patch
+++ b/target/linux/generic/patches-3.18/950-vm_exports.patch
@@ -52,7 +52,7 @@
* When we die, we re-parent all our children, and try to:
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
-@@ -3188,6 +3188,7 @@ int can_nice(const struct task_struct *p
+@@ -3159,6 +3159,7 @@ int can_nice(const struct task_struct *p
return (nice_rlim <= task_rlimit(p, RLIMIT_NICE) ||
capable(CAP_SYS_NICE));
}