From b934aa2f2144357ce5f9a62d3fcd2f326e8e9b2b Mon Sep 17 00:00:00 2001 From: Stijn Segers Date: Sun, 18 Feb 2018 21:48:09 +0100 Subject: kernel: update 17.01 kernel to 4.4.116 This bumps the 4.4. kernel in LEDE 17.01 to 4.4.116. More Meltdown & Spectre mitigation. * Refresh patches. * Refresh x86/config for RETPOLINE. * Deleted 8049-PCI-layerscape-Add-fsl-ls2085a-pcie-compatible-ID.patch (accepted upstream) * Deleted 8050-PCI-layerscape-Fix-MSG-TLP-drop-setting.patch (accepted upstream) * 650-pppoe_header_pad.patch does not apply anymore (code was replaced). Bumps from 4.4.113 to 4.4.115 were handled by Kevin Darbyshire-Bryant. Compile-tested on: ar71xx, ramips/mt7621, x86/64 Run-tested on: ar71xx, ramips/mt7621, x86/64 Signed-off-by: Stijn Segers --- .../051-0005-ovl-proper-cleanup-of-workdir.patch | 2 +- .../linux/generic/patches-4.4/204-module_strip.patch | 12 ++++++------ .../generic/patches-4.4/221-module_exports.patch | 2 +- ...-ubi-auto-create-ubiblock-device-for-rootfs.patch | 4 ++-- ...bi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch | 4 ++-- .../610-netfilter_match_bypass_default_checks.patch | 12 ++++++------ .../generic/patches-4.4/650-pppoe_header_pad.patch | 20 -------------------- .../680-NET-skip-GRO-for-foreign-MAC-addresses.patch | 10 +++++----- .../generic/patches-4.4/834-ledtrig-libata.patch | 8 ++++---- .../linux/generic/patches-4.4/902-debloat_proc.patch | 2 +- .../generic/patches-4.4/995-mangle_bootargs.patch | 2 +- 11 files changed, 29 insertions(+), 49 deletions(-) delete mode 100644 target/linux/generic/patches-4.4/650-pppoe_header_pad.patch (limited to 'target/linux/generic') diff --git a/target/linux/generic/patches-4.4/051-0005-ovl-proper-cleanup-of-workdir.patch b/target/linux/generic/patches-4.4/051-0005-ovl-proper-cleanup-of-workdir.patch index eb095b7a2e..7225fc8cd9 100644 --- a/target/linux/generic/patches-4.4/051-0005-ovl-proper-cleanup-of-workdir.patch +++ b/target/linux/generic/patches-4.4/051-0005-ovl-proper-cleanup-of-workdir.patch @@ -53,7 +53,7 @@ Cc: err = ovl_check_whiteouts(realpath->dentry, rdd); fput(realfile); -@@ -569,3 +569,64 @@ void ovl_cleanup_whiteouts(struct dentry +@@ -573,3 +573,64 @@ void ovl_cleanup_whiteouts(struct dentry } mutex_unlock(&upper->d_inode->i_mutex); } diff --git a/target/linux/generic/patches-4.4/204-module_strip.patch b/target/linux/generic/patches-4.4/204-module_strip.patch index d4c8039f75..106b0a5aed 100644 --- a/target/linux/generic/patches-4.4/204-module_strip.patch +++ b/target/linux/generic/patches-4.4/204-module_strip.patch @@ -89,7 +89,7 @@ Signed-off-by: Felix Fietkau --- a/init/Kconfig +++ b/init/Kconfig -@@ -2026,6 +2026,13 @@ config MODULE_COMPRESS_XZ +@@ -2033,6 +2033,13 @@ config MODULE_COMPRESS_XZ endchoice @@ -123,7 +123,7 @@ Signed-off-by: Felix Fietkau set_license(mod, get_modinfo(info, "license")); --- a/scripts/mod/modpost.c +++ b/scripts/mod/modpost.c -@@ -1963,7 +1963,9 @@ static void read_symbols(char *modname) +@@ -1964,7 +1964,9 @@ static void read_symbols(char *modname) symname = remove_dot(info.strtab + sym->st_name); handle_modversions(mod, &info, sym, symname); @@ -133,7 +133,7 @@ Signed-off-by: Felix Fietkau } if (!is_vmlinux(modname) || (is_vmlinux(modname) && vmlinux_section_warnings)) -@@ -2107,7 +2109,9 @@ static void add_header(struct buffer *b, +@@ -2108,7 +2110,9 @@ static void add_header(struct buffer *b, buf_printf(b, "#include \n"); buf_printf(b, "#include \n"); buf_printf(b, "\n"); @@ -143,7 +143,7 @@ Signed-off-by: Felix Fietkau buf_printf(b, "\n"); buf_printf(b, "__visible struct module __this_module\n"); buf_printf(b, "__attribute__((section(\".gnu.linkonce.this_module\"))) = {\n"); -@@ -2124,16 +2128,20 @@ static void add_header(struct buffer *b, +@@ -2125,16 +2129,20 @@ static void add_header(struct buffer *b, static void add_intree_flag(struct buffer *b, int is_intree) { @@ -164,7 +164,7 @@ Signed-off-by: Felix Fietkau } /* In kernel, this size is defined in linux/module.h; -@@ -2237,11 +2245,13 @@ static void add_depends(struct buffer *b +@@ -2238,11 +2246,13 @@ static void add_depends(struct buffer *b static void add_srcversion(struct buffer *b, struct module *mod) { @@ -178,7 +178,7 @@ Signed-off-by: Felix Fietkau } static void write_if_changed(struct buffer *b, const char *fname) -@@ -2475,7 +2485,9 @@ int main(int argc, char **argv) +@@ -2476,7 +2486,9 @@ int main(int argc, char **argv) add_staging_flag(&buf, mod->name); err |= add_versions(&buf, mod); add_depends(&buf, mod, modules); diff --git a/target/linux/generic/patches-4.4/221-module_exports.patch b/target/linux/generic/patches-4.4/221-module_exports.patch index 510a86c468..44c0a6dec6 100644 --- a/target/linux/generic/patches-4.4/221-module_exports.patch +++ b/target/linux/generic/patches-4.4/221-module_exports.patch @@ -54,7 +54,7 @@ } --- a/scripts/Makefile.build +++ b/scripts/Makefile.build -@@ -299,7 +299,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $( +@@ -372,7 +372,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $( # Linker scripts preprocessor (.lds.S -> .lds) # --------------------------------------------------------------------------- quiet_cmd_cpp_lds_S = LDS $@ diff --git a/target/linux/generic/patches-4.4/491-ubi-auto-create-ubiblock-device-for-rootfs.patch b/target/linux/generic/patches-4.4/491-ubi-auto-create-ubiblock-device-for-rootfs.patch index da3111266a..462f7f42cb 100644 --- a/target/linux/generic/patches-4.4/491-ubi-auto-create-ubiblock-device-for-rootfs.patch +++ b/target/linux/generic/patches-4.4/491-ubi-auto-create-ubiblock-device-for-rootfs.patch @@ -11,7 +11,7 @@ Signed-off-by: Daniel Golle --- a/drivers/mtd/ubi/block.c +++ b/drivers/mtd/ubi/block.c -@@ -628,6 +628,44 @@ static void __init ubiblock_create_from_ +@@ -636,6 +636,44 @@ static void __init ubiblock_create_from_ } } @@ -56,7 +56,7 @@ Signed-off-by: Daniel Golle static void ubiblock_remove_all(void) { struct ubiblock *next; -@@ -658,6 +696,10 @@ int __init ubiblock_init(void) +@@ -668,6 +706,10 @@ int __init ubiblock_init(void) */ ubiblock_create_from_param(); diff --git a/target/linux/generic/patches-4.4/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch b/target/linux/generic/patches-4.4/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch index f55e8e3a4d..9fbfc79927 100644 --- a/target/linux/generic/patches-4.4/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch +++ b/target/linux/generic/patches-4.4/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch @@ -19,7 +19,7 @@ Signed-off-by: Daniel Golle #include "ubi-media.h" #include "ubi.h" -@@ -448,6 +449,15 @@ int ubiblock_create(struct ubi_volume_in +@@ -447,6 +448,15 @@ int ubiblock_create(struct ubi_volume_in add_disk(dev->gd); dev_info(disk_to_dev(dev->gd), "created from ubi%d:%d(%s)", dev->ubi_num, dev->vol_id, vi->name); @@ -32,6 +32,6 @@ Signed-off-by: Daniel Golle + ROOT_DEV = MKDEV(gd->major, gd->first_minor); + } + + mutex_unlock(&devices_mutex); return 0; - out_free_queue: diff --git a/target/linux/generic/patches-4.4/610-netfilter_match_bypass_default_checks.patch b/target/linux/generic/patches-4.4/610-netfilter_match_bypass_default_checks.patch index ea9558fccf..257bcf79ee 100644 --- a/target/linux/generic/patches-4.4/610-netfilter_match_bypass_default_checks.patch +++ b/target/linux/generic/patches-4.4/610-netfilter_match_bypass_default_checks.patch @@ -50,16 +50,16 @@ static bool ip_checkentry(const struct ipt_ip *ip) { -@@ -664,6 +690,8 @@ find_check_entry(struct ipt_entry *e, st - struct xt_mtchk_param mtpar; +@@ -655,6 +681,8 @@ find_check_entry(struct ipt_entry *e, st struct xt_entry_match *ematch; + unsigned long pcnt; + ip_checkdefault(&e->ip); + - e->counters.pcnt = xt_percpu_counter_alloc(); - if (IS_ERR_VALUE(e->counters.pcnt)) + pcnt = xt_percpu_counter_alloc(); + if (IS_ERR_VALUE(pcnt)) return -ENOMEM; -@@ -948,6 +976,7 @@ copy_entries_to_user(unsigned int total_ +@@ -953,6 +981,7 @@ copy_entries_to_user(unsigned int total_ const struct xt_table_info *private = table->private; int ret = 0; const void *loc_cpu_entry; @@ -67,7 +67,7 @@ counters = alloc_counters(table); if (IS_ERR(counters)) -@@ -974,6 +1003,14 @@ copy_entries_to_user(unsigned int total_ +@@ -979,6 +1008,14 @@ copy_entries_to_user(unsigned int total_ ret = -EFAULT; goto free_counters; } diff --git a/target/linux/generic/patches-4.4/650-pppoe_header_pad.patch b/target/linux/generic/patches-4.4/650-pppoe_header_pad.patch deleted file mode 100644 index 409de58c28..0000000000 --- a/target/linux/generic/patches-4.4/650-pppoe_header_pad.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/drivers/net/ppp/pppoe.c -+++ b/drivers/net/ppp/pppoe.c -@@ -879,7 +879,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; -@@ -887,7 +887,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; diff --git a/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch index d91db1fe73..7c96f4f171 100644 --- a/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch +++ b/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch @@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4260,6 +4260,9 @@ static enum gro_result dev_gro_receive(s +@@ -4271,6 +4271,9 @@ static enum gro_result dev_gro_receive(s enum gro_result ret; int grow; @@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau if (!(skb->dev->features & NETIF_F_GRO)) goto normal; -@@ -5426,6 +5429,48 @@ static void __netdev_adjacent_dev_unlink +@@ -5437,6 +5440,48 @@ static void __netdev_adjacent_dev_unlink &upper_dev->adj_list.lower); } @@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau static int __netdev_upper_dev_link(struct net_device *dev, struct net_device *upper_dev, bool master, void *private) -@@ -5497,6 +5542,7 @@ static int __netdev_upper_dev_link(struc +@@ -5508,6 +5553,7 @@ static int __netdev_upper_dev_link(struc goto rollback_lower_mesh; } @@ -84,7 +84,7 @@ Signed-off-by: Felix Fietkau call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, &changeupper_info.info); return 0; -@@ -5623,6 +5669,7 @@ void netdev_upper_dev_unlink(struct net_ +@@ -5634,6 +5680,7 @@ void netdev_upper_dev_unlink(struct net_ list_for_each_entry(i, &upper_dev->all_adj_list.upper, list) __netdev_adjacent_dev_unlink(dev, i->dev, i->ref_nr); @@ -92,7 +92,7 @@ Signed-off-by: Felix Fietkau call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, &changeupper_info.info); } -@@ -6163,6 +6210,7 @@ int dev_set_mac_address(struct net_devic +@@ -6174,6 +6221,7 @@ int dev_set_mac_address(struct net_devic if (err) return err; dev->addr_assign_type = NET_ADDR_SET; diff --git a/target/linux/generic/patches-4.4/834-ledtrig-libata.patch b/target/linux/generic/patches-4.4/834-ledtrig-libata.patch index c3d187a098..ad63634479 100644 --- a/target/linux/generic/patches-4.4/834-ledtrig-libata.patch +++ b/target/linux/generic/patches-4.4/834-ledtrig-libata.patch @@ -69,7 +69,7 @@ Signed-off-by: Daniel Golle /** * ata_build_rw_tf - Build ATA taskfile for given read/write request * @tf: Target ATA taskfile -@@ -4780,6 +4793,9 @@ struct ata_queued_cmd *ata_qc_new_init(s +@@ -4781,6 +4794,9 @@ struct ata_queued_cmd *ata_qc_new_init(s if (tag < 0) return NULL; } @@ -79,7 +79,7 @@ Signed-off-by: Daniel Golle qc = __ata_qc_from_tag(ap, tag); qc->tag = tag; -@@ -5677,6 +5693,9 @@ struct ata_port *ata_port_alloc(struct a +@@ -5678,6 +5694,9 @@ struct ata_port *ata_port_alloc(struct a ap->stats.unhandled_irq = 1; ap->stats.idle_irq = 1; #endif @@ -89,7 +89,7 @@ Signed-off-by: Daniel Golle ata_sff_port_init(ap); return ap; -@@ -5698,6 +5717,12 @@ static void ata_host_release(struct devi +@@ -5699,6 +5718,12 @@ static void ata_host_release(struct devi kfree(ap->pmp_link); kfree(ap->slave_link); @@ -102,7 +102,7 @@ Signed-off-by: Daniel Golle kfree(ap); host->ports[i] = NULL; } -@@ -6144,7 +6169,23 @@ int ata_host_register(struct ata_host *h +@@ -6145,7 +6170,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; } diff --git a/target/linux/generic/patches-4.4/902-debloat_proc.patch b/target/linux/generic/patches-4.4/902-debloat_proc.patch index 4f874e5986..931f43fce4 100644 --- a/target/linux/generic/patches-4.4/902-debloat_proc.patch +++ b/target/linux/generic/patches-4.4/902-debloat_proc.patch @@ -251,7 +251,7 @@ --- a/ipc/msg.c +++ b/ipc/msg.c -@@ -1068,6 +1068,9 @@ void __init msg_init(void) +@@ -1071,6 +1071,9 @@ void __init msg_init(void) { msg_init_ns(&init_ipc_ns); diff --git a/target/linux/generic/patches-4.4/995-mangle_bootargs.patch b/target/linux/generic/patches-4.4/995-mangle_bootargs.patch index e008dd9098..821370350e 100644 --- a/target/linux/generic/patches-4.4/995-mangle_bootargs.patch +++ b/target/linux/generic/patches-4.4/995-mangle_bootargs.patch @@ -40,7 +40,7 @@ setup_per_cpu_areas(); --- a/init/Kconfig +++ b/init/Kconfig -@@ -1648,6 +1648,15 @@ config EMBEDDED +@@ -1655,6 +1655,15 @@ config EMBEDDED an embedded system so certain expert options are available for configuration. -- cgit v1.2.3