kernel: update to linux 3.10.4, refresh patches

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37617
This commit is contained in:
Felix Fietkau 2013-07-29 22:42:22 +00:00
parent 36e6d4ca53
commit 8f04792531
25 changed files with 67 additions and 70 deletions

View file

@ -17,8 +17,8 @@ endif
ifeq ($(LINUX_VERSION),3.9.11) ifeq ($(LINUX_VERSION),3.9.11)
LINUX_KERNEL_MD5SUM:=edbf88eb7f7d34dbd5d3887726790755 LINUX_KERNEL_MD5SUM:=edbf88eb7f7d34dbd5d3887726790755
endif endif
ifeq ($(LINUX_VERSION),3.10.3) ifeq ($(LINUX_VERSION),3.10.4)
LINUX_KERNEL_MD5SUM:=30d2f96003778d03fa102b319f46b0c9 LINUX_KERNEL_MD5SUM:=0378156d0a4ebf155d083531c3cb3826
endif endif
# disable the md5sum check for unknown kernel versions # disable the md5sum check for unknown kernel versions

View file

@ -13,7 +13,7 @@ FEATURES:=squashfs targz mips16
CFLAGS:=-Os -pipe -mips32r2 -mtune=34kc -mno-branch-likely CFLAGS:=-Os -pipe -mips32r2 -mtune=34kc -mno-branch-likely
SUBTARGETS:=generic nand SUBTARGETS:=generic nand
LINUX_VERSION:=3.10.3 LINUX_VERSION:=3.10.4
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View file

@ -219,26 +219,26 @@
{ {
UInt32 dicSize; UInt32 dicSize;
Byte d; Byte d;
@@ -935,7 +883,7 @@ static SRes LzmaDec_AllocateProbs2(CLzma @@ -935,33 +883,11 @@ static SRes LzmaDec_AllocateProbs2(CLzma
return SZ_OK; return SZ_OK;
} }
-SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc) -SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
-{
- CLzmaProps propNew;
- RINOK(LzmaProps_Decode(&propNew, props, propsSize));
- RINOK(LzmaDec_AllocateProbs2(p, &propNew, alloc));
- p->prop = propNew;
- return SZ_OK;
-}
-
-SRes LzmaDec_Allocate(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
+static SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc) +static SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
{ {
CLzmaProps propNew; CLzmaProps propNew;
RINOK(LzmaProps_Decode(&propNew, props, propsSize));
@@ -943,28 +891,6 @@ SRes LzmaDec_AllocateProbs(CLzmaDec *p,
p->prop = propNew;
return SZ_OK;
}
-
-SRes LzmaDec_Allocate(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
-{
- CLzmaProps propNew;
- SizeT dicBufSize; - SizeT dicBufSize;
- RINOK(LzmaProps_Decode(&propNew, props, propsSize)); RINOK(LzmaProps_Decode(&propNew, props, propsSize));
- RINOK(LzmaDec_AllocateProbs2(p, &propNew, alloc)); RINOK(LzmaDec_AllocateProbs2(p, &propNew, alloc));
- dicBufSize = propNew.dicSize; - dicBufSize = propNew.dicSize;
- if (p->dic == 0 || dicBufSize != p->dicBufSize) - if (p->dic == 0 || dicBufSize != p->dicBufSize)
- { - {
@ -251,12 +251,9 @@
- } - }
- } - }
- p->dicBufSize = dicBufSize; - p->dicBufSize = dicBufSize;
- p->prop = propNew; p->prop = propNew;
- return SZ_OK; return SZ_OK;
-} }
SRes LzmaDecode(Byte *dest, SizeT *destLen, const Byte *src, SizeT *srcLen,
const Byte *propData, unsigned propSize, ELzmaFinishMode finishMode,
--- a/include/linux/lzma/LzmaEnc.h --- a/include/linux/lzma/LzmaEnc.h
+++ b/include/linux/lzma/LzmaEnc.h +++ b/include/linux/lzma/LzmaEnc.h
@@ -31,9 +31,6 @@ typedef struct _CLzmaEncProps @@ -31,9 +31,6 @@ typedef struct _CLzmaEncProps

View file

@ -76,11 +76,10 @@
counters = alloc_counters(table); counters = alloc_counters(table);
if (IS_ERR(counters)) if (IS_ERR(counters))
@@ -960,6 +989,14 @@ copy_entries_to_user(unsigned int total_ @@ -961,6 +990,14 @@ copy_entries_to_user(unsigned int total_
ret = -EFAULT;
goto free_counters; goto free_counters;
} }
+
+ flags = e->ip.flags & IPT_F_MASK; + flags = e->ip.flags & IPT_F_MASK;
+ if (copy_to_user(userptr + off + if (copy_to_user(userptr + off
+ + offsetof(struct ipt_entry, ip.flags), + + offsetof(struct ipt_entry, ip.flags),
@ -88,6 +87,7 @@
+ ret = -EFAULT; + ret = -EFAULT;
+ goto free_counters; + goto free_counters;
+ } + }
+
for (i = sizeof(struct ipt_entry); for (i = sizeof(struct ipt_entry);
i < e->target_offset; i < e->target_offset;
i += m->u.match_size) {

View file

@ -1,6 +1,6 @@
--- a/include/net/addrconf.h --- a/include/net/addrconf.h
+++ b/include/net/addrconf.h +++ b/include/net/addrconf.h
@@ -96,6 +96,12 @@ extern void addrconf_join_solict(struc @@ -99,6 +99,12 @@ extern void addrconf_join_solict(struc
extern void addrconf_leave_solict(struct inet6_dev *idev, extern void addrconf_leave_solict(struct inet6_dev *idev,
const struct in6_addr *addr); const struct in6_addr *addr);
@ -47,9 +47,9 @@
} }
-EXPORT_SYMBOL(ipv6_dev_get_saddr); -EXPORT_SYMBOL(ipv6_dev_get_saddr);
int ipv6_get_lladdr(struct net_device *dev, struct in6_addr *addr, int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr,
unsigned char banned_flags) unsigned char banned_flags)
@@ -5137,6 +5136,9 @@ int __init addrconf_init(void) @@ -5145,6 +5144,9 @@ int __init addrconf_init(void)
ipv6_addr_label_rtnl_register(); ipv6_addr_label_rtnl_register();
@ -59,7 +59,7 @@
return 0; return 0;
errout: errout:
rtnl_af_unregister(&inet6_ops); rtnl_af_unregister(&inet6_ops);
@@ -5155,6 +5157,9 @@ void addrconf_cleanup(void) @@ -5163,6 +5165,9 @@ void addrconf_cleanup(void)
struct net_device *dev; struct net_device *dev;
int i; int i;

View file

@ -112,7 +112,7 @@
return -EINVAL; return -EINVAL;
--- a/net/ipv6/route.c --- a/net/ipv6/route.c
+++ b/net/ipv6/route.c +++ b/net/ipv6/route.c
@@ -245,6 +245,24 @@ static const struct rt6_info ip6_prohibi @@ -251,6 +251,24 @@ static const struct rt6_info ip6_prohibi
.rt6i_ref = ATOMIC_INIT(1), .rt6i_ref = ATOMIC_INIT(1),
}; };
@ -137,7 +137,7 @@
static const struct rt6_info ip6_blk_hole_entry_template = { static const struct rt6_info ip6_blk_hole_entry_template = {
.dst = { .dst = {
.__refcnt = ATOMIC_INIT(1), .__refcnt = ATOMIC_INIT(1),
@@ -1459,6 +1477,9 @@ int ip6_route_add(struct fib6_config *cf @@ -1481,6 +1499,9 @@ int ip6_route_add(struct fib6_config *cf
case RTN_THROW: case RTN_THROW:
rt->dst.error = -EAGAIN; rt->dst.error = -EAGAIN;
break; break;
@ -147,7 +147,7 @@
default: default:
rt->dst.error = -ENETUNREACH; rt->dst.error = -ENETUNREACH;
break; break;
@@ -2035,6 +2056,17 @@ static int ip6_pkt_prohibit_out(struct s @@ -2057,6 +2078,17 @@ static int ip6_pkt_prohibit_out(struct s
return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES); return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
} }
@ -165,7 +165,7 @@
#endif #endif
/* /*
@@ -2240,7 +2272,8 @@ static int rtm_to_fib6_config(struct sk_ @@ -2262,7 +2294,8 @@ static int rtm_to_fib6_config(struct sk_
if (rtm->rtm_type == RTN_UNREACHABLE || if (rtm->rtm_type == RTN_UNREACHABLE ||
rtm->rtm_type == RTN_BLACKHOLE || rtm->rtm_type == RTN_BLACKHOLE ||
rtm->rtm_type == RTN_PROHIBIT || rtm->rtm_type == RTN_PROHIBIT ||
@ -175,7 +175,7 @@
cfg->fc_flags |= RTF_REJECT; cfg->fc_flags |= RTF_REJECT;
if (rtm->rtm_type == RTN_LOCAL) if (rtm->rtm_type == RTN_LOCAL)
@@ -2442,6 +2475,9 @@ static int rt6_fill_node(struct net *net @@ -2464,6 +2497,9 @@ static int rt6_fill_node(struct net *net
case -EACCES: case -EACCES:
rtm->rtm_type = RTN_PROHIBIT; rtm->rtm_type = RTN_PROHIBIT;
break; break;
@ -185,7 +185,7 @@
case -EAGAIN: case -EAGAIN:
rtm->rtm_type = RTN_THROW; rtm->rtm_type = RTN_THROW;
break; break;
@@ -2692,6 +2728,8 @@ static int ip6_route_dev_notify(struct n @@ -2714,6 +2750,8 @@ static int ip6_route_dev_notify(struct n
#ifdef CONFIG_IPV6_MULTIPLE_TABLES #ifdef CONFIG_IPV6_MULTIPLE_TABLES
net->ipv6.ip6_prohibit_entry->dst.dev = dev; net->ipv6.ip6_prohibit_entry->dst.dev = dev;
net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev); net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
@ -194,7 +194,7 @@
net->ipv6.ip6_blk_hole_entry->dst.dev = dev; net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev); net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
#endif #endif
@@ -2952,6 +2990,17 @@ static int __net_init ip6_route_net_init @@ -2974,6 +3012,17 @@ static int __net_init ip6_route_net_init
net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops; net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst, dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
ip6_template_metrics, true); ip6_template_metrics, true);
@ -212,7 +212,7 @@
#endif #endif
net->ipv6.sysctl.flush_delay = 0; net->ipv6.sysctl.flush_delay = 0;
@@ -2970,6 +3019,8 @@ out: @@ -2992,6 +3041,8 @@ out:
return ret; return ret;
#ifdef CONFIG_IPV6_MULTIPLE_TABLES #ifdef CONFIG_IPV6_MULTIPLE_TABLES
@ -221,7 +221,7 @@
out_ip6_prohibit_entry: out_ip6_prohibit_entry:
kfree(net->ipv6.ip6_prohibit_entry); kfree(net->ipv6.ip6_prohibit_entry);
out_ip6_null_entry: out_ip6_null_entry:
@@ -2987,6 +3038,7 @@ static void __net_exit ip6_route_net_exi @@ -3009,6 +3060,7 @@ static void __net_exit ip6_route_net_exi
#ifdef CONFIG_IPV6_MULTIPLE_TABLES #ifdef CONFIG_IPV6_MULTIPLE_TABLES
kfree(net->ipv6.ip6_prohibit_entry); kfree(net->ipv6.ip6_prohibit_entry);
kfree(net->ipv6.ip6_blk_hole_entry); kfree(net->ipv6.ip6_blk_hole_entry);
@ -229,7 +229,7 @@
#endif #endif
dst_entries_destroy(&net->ipv6.ip6_dst_ops); dst_entries_destroy(&net->ipv6.ip6_dst_ops);
} }
@@ -3083,6 +3135,9 @@ int __init ip6_route_init(void) @@ -3105,6 +3157,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_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->dst.dev = init_net.loopback_dev;
init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev); init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);