kernel: update 3.14 to 3.14.25

Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 43427
v19.07.3_mercusys_ac12_duma
Luka Perkov 10 years ago
parent d11aefc8eb
commit 070d3b27c2

@ -6,14 +6,14 @@ LINUX_VERSION-3.3 = .8
LINUX_VERSION-3.8 = .13
LINUX_VERSION-3.10 = .58
LINUX_VERSION-3.13 = .7
LINUX_VERSION-3.14 = .18
LINUX_VERSION-3.14 = .25
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.14.25 = 3ae910d35292706d85870c3939547123
LINUX_KERNEL_MD5SUM-3.18-rc6 = 892b929629ba8af764eeffc394654329
ifdef KERNEL_PATCHVER

@ -54,13 +54,11 @@ Signed-off-by: Florian Fainelli <florian@openwrt.org>
--- a/arch/mips/boot/compressed/decompress.c
+++ b/arch/mips/boot/compressed/decompress.c
@@ -10,9 +10,7 @@
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
@@ -12,7 +12,6 @@
*/
-
#include <linux/types.h>
-#include <linux/kernel.h>
#include <linux/string.h>
#include <asm/addrspace.h>

@ -318,7 +318,7 @@
extern const struct file_operations pipefifo_fops;
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -414,6 +414,7 @@ int __inode_permission(struct inode *ino
@@ -415,6 +415,7 @@ int __inode_permission(struct inode *ino
return security_inode_permission(inode, mask);
}
@ -344,7 +344,7 @@
goto out;
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -1541,6 +1541,33 @@ void drop_collected_mounts(struct vfsmou
@@ -1581,6 +1581,33 @@ void drop_collected_mounts(struct vfsmou
namespace_unlock();
}
@ -3219,7 +3219,7 @@
file_ra_state_init(struct file_ra_state *ra, struct address_space *mapping);
--- a/include/linux/mount.h
+++ b/include/linux/mount.h
@@ -74,6 +74,9 @@ extern void mnt_pin(struct vfsmount *mnt
@@ -81,6 +81,9 @@ extern void mnt_pin(struct vfsmount *mnt
extern void mnt_unpin(struct vfsmount *mnt);
extern int __mnt_is_readonly(struct vfsmount *mnt);

@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1830,6 +1830,13 @@ config MODULE_SIG_HASH
@@ -1831,6 +1831,13 @@ config MODULE_SIG_HASH
default "sha384" if MODULE_SIG_SHA384
default "sha512" if MODULE_SIG_SHA512
@ -115,7 +115,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
config INIT_ALL_POSSIBLE
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -2661,6 +2661,7 @@ static struct module *setup_load_info(st
@@ -2663,6 +2663,7 @@ static struct module *setup_load_info(st
static int check_modinfo(struct module *mod, struct load_info *info, int flags)
{
@ -123,7 +123,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
const char *modmagic = get_modinfo(info, "vermagic");
int err;
@@ -2686,6 +2687,7 @@ static int check_modinfo(struct module *
@@ -2688,6 +2689,7 @@ static int check_modinfo(struct module *
pr_warn("%s: module is from the staging directory, the quality "
"is unknown, you have been warned.\n", mod->name);
}

@ -68,7 +68,7 @@
#include <linux/mutex.h>
#include <linux/err.h>
#include <linux/rbtree.h>
@@ -2247,3 +2248,5 @@ static int __init regmap_initcall(void)
@@ -2252,3 +2253,5 @@ static int __init regmap_initcall(void)
return 0;
}
postcore_initcall(regmap_initcall);

@ -104,7 +104,7 @@ Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
/* UBIFS file system VFS magic number */
#define UBIFS_SUPER_MAGIC 0x24051905
@@ -1209,6 +1218,7 @@ struct ubifs_debug_info;
@@ -1208,6 +1217,7 @@ struct ubifs_debug_info;
* @need_recovery: %1 if the file-system needs recovery
* @replaying: %1 during journal replay
* @mounting: %1 while mounting
@ -112,7 +112,7 @@ Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
* @remounting_rw: %1 while re-mounting from R/O mode to R/W mode
* @replay_list: temporary list used during journal replay
* @replay_buds: list of buds to replay
@@ -1441,6 +1451,7 @@ struct ubifs_info {
@@ -1439,6 +1449,7 @@ struct ubifs_info {
unsigned int replaying:1;
unsigned int mounting:1;
unsigned int remounting_rw:1;

@ -26,7 +26,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
#define PACKET_FANOUT_LB 1
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
@@ -1539,6 +1539,7 @@ static int packet_rcv_spkt(struct sk_buf
@@ -1540,6 +1540,7 @@ static int packet_rcv_spkt(struct sk_buf
{
struct sock *sk;
struct sockaddr_pkt *spkt;
@ -34,7 +34,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
/*
* When we registered the protocol we saved the socket in the data
@@ -1546,6 +1547,7 @@ static int packet_rcv_spkt(struct sk_buf
@@ -1547,6 +1548,7 @@ static int packet_rcv_spkt(struct sk_buf
*/
sk = pt->af_packet_priv;
@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
/*
* Yank back the headers [hope the device set this
@@ -1558,7 +1560,7 @@ static int packet_rcv_spkt(struct sk_buf
@@ -1559,7 +1561,7 @@ static int packet_rcv_spkt(struct sk_buf
* so that this procedure is noop.
*/
@ -51,7 +51,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
goto out;
if (!net_eq(dev_net(dev), sock_net(sk)))
@@ -1765,12 +1767,12 @@ static int packet_rcv(struct sk_buff *sk
@@ -1766,12 +1768,12 @@ static int packet_rcv(struct sk_buff *sk
int skb_len = skb->len;
unsigned int snaplen, res;
@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
@@ -1890,12 +1892,12 @@ static int tpacket_rcv(struct sk_buff *s
@@ -1891,12 +1893,12 @@ static int tpacket_rcv(struct sk_buff *s
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
@ -83,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
@@ -2810,6 +2812,7 @@ static int packet_create(struct net *net
@@ -2823,6 +2825,7 @@ static int packet_create(struct net *net
spin_lock_init(&po->bind_lock);
mutex_init(&po->pg_vec_lock);
po->prot_hook.func = packet_rcv;
@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
@@ -3392,6 +3395,16 @@ packet_setsockopt(struct socket *sock, i
@@ -3405,6 +3408,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0;
}
@ -108,7 +108,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
default:
return -ENOPROTOOPT;
}
@@ -3443,6 +3456,13 @@ static int packet_getsockopt(struct sock
@@ -3456,6 +3469,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;
@ -124,7 +124,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
break;
--- a/net/packet/internal.h
+++ b/net/packet/internal.h
@@ -116,6 +116,7 @@ struct packet_sock {
@@ -117,6 +117,7 @@ struct packet_sock {
struct net_device __rcu *cached_dev;
int (*xmit)(struct sk_buff *skb);
struct packet_type prot_hook ____cacheline_aligned_in_smp;

@ -49,7 +49,7 @@
int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr,
u32 banned_flags)
@@ -5385,6 +5384,9 @@ int __init addrconf_init(void)
@@ -5380,6 +5379,9 @@ int __init addrconf_init(void)
ipv6_addr_label_rtnl_register();
@ -59,7 +59,7 @@
return 0;
errout:
rtnl_af_unregister(&inet6_ops);
@@ -5404,6 +5406,9 @@ void addrconf_cleanup(void)
@@ -5399,6 +5401,9 @@ void addrconf_cleanup(void)
struct net_device *dev;
int i;

@ -96,7 +96,7 @@
if (vlan_tx_tag_present(skb))
--- a/net/bridge/br_private.h
+++ b/net/bridge/br_private.h
@@ -724,15 +724,29 @@ static inline u16 br_get_pvid(const stru
@@ -727,15 +727,29 @@ static inline u16 br_get_pvid(const stru
/* br_netfilter.c */
#ifdef CONFIG_BRIDGE_NETFILTER

@ -270,7 +270,7 @@
#ifdef CONFIG_BRIDGE_IGMP_SNOOPING
struct bridge_mcast_query ip4_query;
@@ -468,7 +472,8 @@ void br_multicast_free_pg(struct rcu_hea
@@ -471,7 +475,8 @@ void br_multicast_free_pg(struct rcu_hea
struct net_bridge_port_group *
br_multicast_new_port_group(struct net_bridge_port *port, struct br_ip *group,
struct net_bridge_port_group __rcu *next,

@ -132,7 +132,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
}
return &ip6n->tnls[prio][h];
}
@@ -386,6 +395,12 @@ ip6_tnl_dev_uninit(struct net_device *de
@@ -383,6 +392,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
@@ -769,6 +784,108 @@ int ip6_tnl_rcv_ctl(struct ip6_tnl *t,
@@ -766,6 +781,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
@@ -813,6 +930,26 @@ static int ip6_tnl_rcv(struct sk_buff *s
@@ -810,6 +927,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);
@@ -1073,6 +1210,7 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str
@@ -1070,6 +1207,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))
@@ -1092,6 +1230,18 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, str
@@ -1089,6 +1227,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. */
@@ -1260,6 +1410,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
@@ -1257,6 +1407,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;
@@ -1290,6 +1448,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
@@ -1287,6 +1445,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));
}
@@ -1577,6 +1736,15 @@ static int ip6_tnl_validate(struct nlatt
@@ -1569,6 +1728,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)
{
@@ -1610,6 +1778,46 @@ static void ip6_tnl_netlink_parms(struct
@@ -1602,6 +1770,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,
@@ -1662,6 +1870,12 @@ static void ip6_tnl_dellink(struct net_d
@@ -1654,6 +1862,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) +
@@ -1679,6 +1893,24 @@ static size_t ip6_tnl_get_size(const str
@@ -1671,6 +1885,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;
}
@@ -1686,6 +1918,9 @@ static int ip6_tnl_fill_info(struct sk_b
@@ -1678,6 +1910,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),
@@ -1696,8 +1931,27 @@ static int ip6_tnl_fill_info(struct sk_b
@@ -1688,8 +1923,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:
@@ -1713,6 +1967,7 @@ static const struct nla_policy ip6_tnl_p
@@ -1705,6 +1959,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 },

@ -106,15 +106,15 @@
return rc;
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -62,6 +62,7 @@
#include <linux/scatterlist.h>
@@ -63,6 +63,7 @@
#include <linux/errqueue.h>
#include <linux/prefetch.h>
#include <linux/if_vlan.h>
+#include <linux/if.h>
#include <net/protocol.h>
#include <net/dst.h>
@@ -439,6 +440,22 @@ struct sk_buff *__netdev_alloc_skb(struc
@@ -440,6 +441,22 @@ struct sk_buff *__netdev_alloc_skb(struc
}
EXPORT_SYMBOL(__netdev_alloc_skb);

@ -10,7 +10,7 @@
{USB_DEVICE(0x0af0, 0xd155)},
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
@@ -1280,6 +1280,12 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
@@ -1304,6 +1304,12 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
USB_SC_DEVICE, USB_PR_DEVICE, NULL,
0 ),

@ -15,7 +15,7 @@
default y
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -40,6 +40,7 @@ static void quirk_mmio_always_on(struct
@@ -41,6 +41,7 @@ static void quirk_mmio_always_on(struct
DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_ANY_ID, PCI_ANY_ID,
PCI_CLASS_BRIDGE_HOST, 8, quirk_mmio_always_on);
@ -23,7 +23,7 @@
/* The Mellanox Tavor device gives false positive parity errors
* Mark this device with a broken_parity_status, to allow
* PCI scanning code to "skip" this now blacklisted device.
@@ -2860,6 +2861,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
@@ -2880,6 +2881,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
@ -31,7 +31,7 @@
/*
* Ivytown NTB BAR sizes are misreported by the hardware due to an erratum. To
@@ -2916,6 +2918,8 @@ static void fixup_debug_report(struct pc
@@ -2936,6 +2938,8 @@ static void fixup_debug_report(struct pc
}
}
@ -40,7 +40,7 @@
/*
* Some BIOS implementations leave the Intel GPU interrupts enabled,
* even though no one is handling them (f.e. i915 driver is never loaded).
@@ -2951,6 +2955,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
@@ -2971,6 +2975,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);

@ -265,7 +265,7 @@
#include <asm-generic/sections.h>
#include <linux/io.h>
@@ -469,6 +470,8 @@ static void __init_memblock memblock_ins
@@ -468,6 +469,8 @@ static void __init_memblock memblock_ins
memblock_set_region_node(rgn, nid);
type->cnt++;
type->total_size += size;

@ -1,6 +1,6 @@
--- a/mm/shmem.c
+++ b/mm/shmem.c
@@ -3043,6 +3043,15 @@ put_memory:
@@ -2985,6 +2985,15 @@ put_memory:
return res;
}
@ -16,7 +16,7 @@
/**
* shmem_kernel_file_setup - get an unlinked file living in tmpfs which must be
* kernel internal. There will be NO LSM permission checks against the
@@ -3082,11 +3091,8 @@ int shmem_zero_setup(struct vm_area_stru
@@ -3024,11 +3033,8 @@ int shmem_zero_setup(struct vm_area_stru
file = shmem_file_setup("dev/zero", size, vma->vm_flags);
if (IS_ERR(file))
return PTR_ERR(file);
@ -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
@@ -3052,6 +3052,7 @@ int can_nice(const struct task_struct *p
@@ -3056,6 +3056,7 @@ int can_nice(const struct task_struct *p
return (nice_rlim <= task_rlimit(p, RLIMIT_NICE) ||
capable(CAP_SYS_NICE));
}

Loading…
Cancel
Save