LINUX_VERSION-3.18 = .71
LINUX_VERSION-4.4 = .112
LINUX_VERSION-4.9 = .77
-LINUX_VERSION-4.14 = .14
+LINUX_VERSION-4.14 = .18
LINUX_KERNEL_HASH-3.18.71 = 5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240
LINUX_KERNEL_HASH-4.4.112 = 544b42cbeed022896115c76a18fc97b4507d5b41d7ac0ce1dce9afd6ffd11ecd
LINUX_KERNEL_HASH-4.9.77 = 7c29bc3fb96f1e23d98f664e786dddd53a1599f56431b9b7fdfba402a4b3705c
-LINUX_KERNEL_HASH-4.14.14 = 8b96362eb55ae152555980e7193fe2585b487176fb936cc69b8947d7dd32044a
+LINUX_KERNEL_HASH-4.14.18 = 866a94c1c38d923ae18e74b683d7a8a79b674ebdfe7f40f1a3be9a27d39fe354
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
+++ /dev/null
-From ef780324592dd639e4bfbc5b9bf8934b234b7c99 Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 22 Aug 2017 10:08:08 +0200
-Subject: [PATCH] crypto: gcm - add GCM IV size constant
-
-Many GCM users use directly GCM IV size instead of using some constant.
-
-This patch add all IV size constant used by GCM.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
----
- include/crypto/gcm.h | 8 ++++++++
- 1 file changed, 8 insertions(+)
- create mode 100644 include/crypto/gcm.h
-
---- /dev/null
-+++ b/include/crypto/gcm.h
-@@ -0,0 +1,8 @@
-+#ifndef _CRYPTO_GCM_H
-+#define _CRYPTO_GCM_H
-+
-+#define GCM_AES_IV_SIZE 12
-+#define GCM_RFC4106_IV_SIZE 8
-+#define GCM_RFC4543_IV_SIZE 8
-+
-+#endif
+++ /dev/null
-From 4b05f09db650d215632da97f2c25ceba8235102a Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Sun, 26 Nov 2017 00:09:45 +0100
-Subject: [PATCH] crypto: fix typo in KPP dependency of CRYPTO_ECDH
-
-This fixes a typo in the CRYPTO_KPP dependency of CRYPTO_ECDH.
-
-Fixes: 3c4b23901a0c ("crypto: ecdh - Add ECDH software support")
-Cc: <stable@vger.kernel.org> # v4.8+
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
----
- crypto/Kconfig | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/crypto/Kconfig
-+++ b/crypto/Kconfig
-@@ -130,7 +130,7 @@ config CRYPTO_DH
-
- config CRYPTO_ECDH
- tristate "ECDH algorithm"
-- select CRYTPO_KPP
-+ select CRYPTO_KPP
- select CRYPTO_RNG_DEFAULT
- help
- Generic implementation of the ECDH algorithm
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -1896,6 +1896,13 @@ config TRIM_UNUSED_KSYMS
+@@ -1903,6 +1903,13 @@ config TRIM_UNUSED_KSYMS
If unsure, or if you need to build out-of-tree modules, say N.
config MODULES_TREE_LOOKUP
--- a/kernel/module.c
+++ b/kernel/module.c
-@@ -2997,9 +2997,11 @@ static struct module *setup_load_info(st
+@@ -3006,9 +3006,11 @@ static struct module *setup_load_info(st
static int check_modinfo(struct module *mod, struct load_info *info, int flags)
{
if (flags & MODULE_INIT_IGNORE_VERMAGIC)
modmagic = NULL;
-@@ -3020,6 +3022,7 @@ static int check_modinfo(struct module *
+@@ -3029,6 +3031,7 @@ static int check_modinfo(struct module *
mod->name);
add_taint_module(mod, TAINT_OOT_MODULE, LOCKDEP_STILL_OK);
}
+#endif
- if (get_modinfo(info, "staging")) {
- add_taint_module(mod, TAINT_CRAP, LOCKDEP_STILL_OK);
+ check_modinfo_retpoline(mod, info);
+
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -1982,7 +1982,9 @@ static void read_symbols(char *modname)
buf_printf(b, "\n");
buf_printf(b, "__visible struct module __this_module\n");
buf_printf(b, "__attribute__((section(\".gnu.linkonce.this_module\"))) = {\n");
-@@ -2161,16 +2165,20 @@ static void add_header(struct buffer *b,
+@@ -2161,24 +2165,30 @@ static void add_header(struct buffer *b,
static void add_intree_flag(struct buffer *b, int is_intree)
{
+#endif
}
+ /* Cannot check for assembler */
+ static void add_retpoline(struct buffer *b)
+ {
++#ifndef CONFIG_MODULE_STRIPPED
+ buf_printf(b, "\n#ifdef RETPOLINE\n");
+ buf_printf(b, "MODULE_INFO(retpoline, \"Y\");\n");
+ buf_printf(b, "#endif\n");
++#endif
+ }
+
static void add_staging_flag(struct buffer *b, const char *name)
{
+#ifndef CONFIG_MODULE_STRIPPED
}
/**
-@@ -2269,11 +2277,13 @@ static void add_depends(struct buffer *b
+@@ -2277,11 +2287,13 @@ static void add_depends(struct buffer *b
static void add_srcversion(struct buffer *b, struct module *mod)
{
}
static void write_if_changed(struct buffer *b, const char *fname)
-@@ -2509,7 +2519,9 @@ int main(int argc, char **argv)
+@@ -2518,7 +2530,9 @@ int main(int argc, char **argv)
add_staging_flag(&buf, mod->name);
err |= add_versions(&buf, mod);
add_depends(&buf, mod, modules);
__used \
--- a/scripts/Makefile.build
+++ b/scripts/Makefile.build
-@@ -420,7 +420,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $(
+@@ -426,7 +426,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $(
# Linker scripts preprocessor (.lds.S -> .lds)
# ---------------------------------------------------------------------------
quiet_cmd_cpp_lds_S = LDS $@
+++ /dev/null
-From: Felix Fietkau <nbd@nbd.name>
-Subject: pppoe: add extra padding for the header (useful for drivers that need headroom)
-
-lede-commit 6517a757ec711fc3354b857e273e2621042f3c7a
-Signed-off-by: Felix Fietkau <nbd@nbd.name>
----
- drivers/net/ppp/pppoe.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/drivers/net/ppp/pppoe.c
-+++ b/drivers/net/ppp/pppoe.c
-@@ -861,7 +861,7 @@ static int pppoe_sendmsg(struct socket *
- goto end;
-
-
-- skb = sock_wmalloc(sk, total_len + dev->hard_header_len + 32,
-+ skb = sock_wmalloc(sk, total_len + dev->hard_header_len + 32 + NET_SKB_PAD,
- 0, GFP_KERNEL);
- if (!skb) {
- error = -ENOMEM;
-@@ -869,7 +869,7 @@ static int pppoe_sendmsg(struct socket *
- }
-
- /* Reserve space for headers. */
-- skb_reserve(skb, dev->hard_header_len);
-+ skb_reserve(skb, dev->hard_header_len + NET_SKB_PAD);
- skb_reset_network_header(skb);
-
- skb->dev = dev;
__u16 tc_index; /* traffic control index */
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -4757,6 +4757,9 @@ static enum gro_result dev_gro_receive(s
+@@ -4768,6 +4768,9 @@ static enum gro_result dev_gro_receive(s
enum gro_result ret;
int grow;
if (netif_elide_gro(skb->dev))
goto normal;
-@@ -6227,6 +6230,48 @@ static void __netdev_adjacent_dev_unlink
+@@ -6238,6 +6241,48 @@ static void __netdev_adjacent_dev_unlink
&upper_dev->adj_list.lower);
}
static int __netdev_upper_dev_link(struct net_device *dev,
struct net_device *upper_dev, bool master,
void *upper_priv, void *upper_info)
-@@ -6342,6 +6387,8 @@ void netdev_upper_dev_unlink(struct net_
+@@ -6353,6 +6398,8 @@ void netdev_upper_dev_unlink(struct net_
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info);
}
-@@ -6912,6 +6959,7 @@ int dev_set_mac_address(struct net_devic
+@@ -6923,6 +6970,7 @@ int dev_set_mac_address(struct net_devic
if (err)
return err;
dev->addr_assign_type = NET_ADDR_SET;
/**
* ata_build_rw_tf - Build ATA taskfile for given read/write request
* @tf: Target ATA taskfile
-@@ -5089,6 +5102,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
+@@ -5090,6 +5103,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
if (tag < 0)
return NULL;
}
qc = __ata_qc_from_tag(ap, tag);
qc->tag = tag;
-@@ -5991,6 +6007,9 @@ struct ata_port *ata_port_alloc(struct a
+@@ -5992,6 +6008,9 @@ struct ata_port *ata_port_alloc(struct a
ap->stats.unhandled_irq = 1;
ap->stats.idle_irq = 1;
#endif
ata_sff_port_init(ap);
return ap;
-@@ -6012,6 +6031,12 @@ static void ata_host_release(struct devi
+@@ -6013,6 +6032,12 @@ static void ata_host_release(struct devi
kfree(ap->pmp_link);
kfree(ap->slave_link);
kfree(ap);
host->ports[i] = NULL;
}
-@@ -6458,7 +6483,23 @@ int ata_host_register(struct ata_host *h
+@@ -6459,7 +6484,23 @@ int ata_host_register(struct ata_host *h
host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
host->ports[i]->local_port_no = i + 1;
}
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -1420,6 +1420,15 @@ config EMBEDDED
+@@ -1427,6 +1427,15 @@ config EMBEDDED
an embedded system so certain expert options are available
for configuration.