diff --git a/include/kernel-version.mk b/include/kernel-version.mk index d1f5eb2c6ab..0db1b357cbd 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -4,11 +4,11 @@ LINUX_RELEASE?=1 LINUX_VERSION-3.18 = .29 LINUX_VERSION-4.1 = .20 -LINUX_VERSION-4.4 = .21 +LINUX_VERSION-4.4 = .22 LINUX_KERNEL_MD5SUM-3.18.29 = b25737a0bc98e80d12200de93f239c28 LINUX_KERNEL_MD5SUM-4.1.20 = 075c38a3a23ca5bc80437b13606df00a -LINUX_KERNEL_MD5SUM-4.4.21 = 9a59fa5f60f47aab78aaa5f0691b24a2 +LINUX_KERNEL_MD5SUM-4.4.22 = 404802389c7f0bbe94dda95f9d058d9e ifdef KERNEL_PATCHVER LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER))) diff --git a/target/linux/brcm2708/patches-4.4/0036-bcm2708-vchiq-driver.patch b/target/linux/brcm2708/patches-4.4/0036-bcm2708-vchiq-driver.patch index 50865218989..02929f11e61 100644 --- a/target/linux/brcm2708/patches-4.4/0036-bcm2708-vchiq-driver.patch +++ b/target/linux/brcm2708/patches-4.4/0036-bcm2708-vchiq-driver.patch @@ -268,7 +268,7 @@ vchiq: hack: Add include depecated dma include file * Watchdog --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig -@@ -533,6 +533,7 @@ source "drivers/misc/lis3lv02d/Kconfig" +@@ -545,6 +545,7 @@ source "drivers/misc/lis3lv02d/Kconfig" source "drivers/misc/altera-stapl/Kconfig" source "drivers/misc/mei/Kconfig" source "drivers/misc/vmw_vmci/Kconfig" @@ -278,7 +278,7 @@ vchiq: hack: Add include depecated dma include file source "drivers/misc/echo/Kconfig" --- a/drivers/misc/Makefile +++ b/drivers/misc/Makefile -@@ -51,6 +51,7 @@ obj-$(CONFIG_INTEL_MEI) += mei/ +@@ -52,6 +52,7 @@ obj-$(CONFIG_INTEL_MEI) += mei/ obj-$(CONFIG_VMWARE_VMCI) += vmw_vmci/ obj-$(CONFIG_LATTICE_ECP3_CONFIG) += lattice-ecp3-config.o obj-$(CONFIG_SRAM) += sram.o diff --git a/target/linux/generic/patches-4.4/052-02-ubifs-Implement-RENAME_WHITEOUT.patch b/target/linux/generic/patches-4.4/052-02-ubifs-Implement-RENAME_WHITEOUT.patch index 9abb923932f..dd75ef4f474 100644 --- a/target/linux/generic/patches-4.4/052-02-ubifs-Implement-RENAME_WHITEOUT.patch +++ b/target/linux/generic/patches-4.4/052-02-ubifs-Implement-RENAME_WHITEOUT.patch @@ -292,30 +292,31 @@ Signed-off-by: Richard Weinberger - err = ubifs_add_dirt(c, lnum, dlen2); - if (err) - goto out_ro; +- +- dent_key_init(c, &key, old_dir->i_ino, &old_dentry->d_name); +- err = ubifs_tnc_remove_nm(c, &key, &old_dentry->d_name); +- if (err) +- goto out_ro; + offs += aligned_dlen1; + if (whiteout) { + dent_key_init(c, &key, old_dir->i_ino, &old_dentry->d_name); + err = ubifs_tnc_add_nm(c, &key, lnum, offs, dlen2, &old_dentry->d_name); + if (err) + goto out_ro; - -- dent_key_init(c, &key, old_dir->i_ino, &old_dentry->d_name); -- err = ubifs_tnc_remove_nm(c, &key, &old_dentry->d_name); -- if (err) -- goto out_ro; ++ + ubifs_delete_orphan(c, whiteout->i_ino); + } else { + err = ubifs_add_dirt(c, lnum, dlen2); + if (err) + goto out_ro; - -- offs += aligned_dlen1 + aligned_dlen2; ++ + dent_key_init(c, &key, old_dir->i_ino, &old_dentry->d_name); + err = ubifs_tnc_remove_nm(c, &key, &old_dentry->d_name); + if (err) + goto out_ro; + } -+ + +- offs += aligned_dlen1 + aligned_dlen2; + offs += aligned_dlen2; if (new_inode) { ino_key_init(c, &key, new_inode->i_ino); 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 a658bfe9d15..cbd1a081273 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 @@ -102,7 +102,7 @@ Signed-off-by: Felix Fietkau return 0; --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h -@@ -1638,6 +1638,8 @@ struct net_device { +@@ -1637,6 +1637,8 @@ struct net_device { struct netdev_hw_addr_list mc; struct netdev_hw_addr_list dev_addrs; diff --git a/target/linux/generic/patches-4.4/721-phy_packets.patch b/target/linux/generic/patches-4.4/721-phy_packets.patch index c3fbb955b82..7f288f884c3 100644 --- a/target/linux/generic/patches-4.4/721-phy_packets.patch +++ b/target/linux/generic/patches-4.4/721-phy_packets.patch @@ -1,6 +1,6 @@ --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h -@@ -1298,6 +1298,7 @@ enum netdev_priv_flags { +@@ -1297,6 +1297,7 @@ enum netdev_priv_flags { IFF_NO_QUEUE = 1<<21, IFF_OPENVSWITCH = 1<<22, IFF_L3MDEV_SLAVE = 1<<23, @@ -8,7 +8,7 @@ }; #define IFF_802_1Q_VLAN IFF_802_1Q_VLAN -@@ -1324,6 +1325,7 @@ enum netdev_priv_flags { +@@ -1323,6 +1324,7 @@ enum netdev_priv_flags { #define IFF_NO_QUEUE IFF_NO_QUEUE #define IFF_OPENVSWITCH IFF_OPENVSWITCH #define IFF_L3MDEV_SLAVE IFF_L3MDEV_SLAVE @@ -16,7 +16,7 @@ /** * struct net_device - The DEVICE structure. -@@ -1603,6 +1605,11 @@ struct net_device { +@@ -1602,6 +1604,11 @@ struct net_device { const struct l3mdev_ops *l3mdev_ops; #endif @@ -28,7 +28,7 @@ const struct header_ops *header_ops; unsigned int flags; -@@ -1669,6 +1676,10 @@ struct net_device { +@@ -1668,6 +1675,10 @@ struct net_device { struct mpls_dev __rcu *mpls_ptr; #endif diff --git a/target/linux/generic/patches-4.4/835-misc-owl_loader.patch b/target/linux/generic/patches-4.4/835-misc-owl_loader.patch index bbf19c093d7..c1790206802 100644 --- a/target/linux/generic/patches-4.4/835-misc-owl_loader.patch +++ b/target/linux/generic/patches-4.4/835-misc-owl_loader.patch @@ -1,9 +1,9 @@ ---- a/drivers/misc/Kconfig 2016-09-18 15:23:07.100190724 +0200 -+++ b/drivers/misc/Kconfig 2016-09-18 15:26:56.130785350 +0200 +--- a/drivers/misc/Kconfig ++++ b/drivers/misc/Kconfig @@ -150,6 +150,18 @@ config SGI_IOC4 If you have an SGI Altix with an IOC4-based card say Y. Otherwise say N. - + +config OWL_LOADER + tristate "Owl loader for initializing Atheros PCI(e) Wifi chips" + depends on PCI @@ -19,8 +19,8 @@ config TIFM_CORE tristate "TI Flash Media interface support" depends on PCI ---- a/drivers/misc/Makefile 2016-09-18 15:21:56.406675181 +0200 -+++ b/drivers/misc/Makefile 2016-09-18 15:22:46.866805239 +0200 +--- a/drivers/misc/Makefile ++++ b/drivers/misc/Makefile @@ -15,6 +15,7 @@ obj-$(CONFIG_BMP085_SPI) += bmp085-spi.o obj-$(CONFIG_DUMMY_IRQ) += dummy-irq.o obj-$(CONFIG_ICS932S401) += ics932s401.o diff --git a/target/linux/generic/patches-4.4/904-debloat_dma_buf.patch b/target/linux/generic/patches-4.4/904-debloat_dma_buf.patch index 3e6a9a1d68c..10613de8529 100644 --- a/target/linux/generic/patches-4.4/904-debloat_dma_buf.patch +++ b/target/linux/generic/patches-4.4/904-debloat_dma_buf.patch @@ -34,7 +34,7 @@ +MODULE_LICENSE("GPL"); --- a/kernel/sched/core.c +++ b/kernel/sched/core.c -@@ -2075,6 +2075,7 @@ int wake_up_state(struct task_struct *p, +@@ -2097,6 +2097,7 @@ int wake_up_state(struct task_struct *p, { return try_to_wake_up(p, state, 0); } diff --git a/target/linux/mediatek/patches-4.4/0019-xhci-mediatek-support-MTK-xHCI-host-controller.patch b/target/linux/mediatek/patches-4.4/0019-xhci-mediatek-support-MTK-xHCI-host-controller.patch index c107c7ce879..055ea038351 100644 --- a/target/linux/mediatek/patches-4.4/0019-xhci-mediatek-support-MTK-xHCI-host-controller.patch +++ b/target/linux/mediatek/patches-4.4/0019-xhci-mediatek-support-MTK-xHCI-host-controller.patch @@ -1428,7 +1428,7 @@ Reviewed-by: Daniel Thompson /* * Returns zero if the TRB isn't in this segment, otherwise it returns the DMA -@@ -3084,17 +3085,22 @@ static u32 xhci_td_remainder(struct xhci +@@ -3088,17 +3089,22 @@ static u32 xhci_td_remainder(struct xhci { u32 maxp, total_packet_count; @@ -1455,7 +1455,7 @@ Reviewed-by: Daniel Thompson /* Queueing functions don't count the current TRB into transferred */ return (total_packet_count - ((transferred + trb_buff_len) / maxp)); } -@@ -3482,7 +3488,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd * +@@ -3486,7 +3492,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd * field |= 0x1; /* xHCI 1.0/1.1 6.4.1.2.1: Transfer Type field */ diff --git a/target/linux/oxnas/patches-4.4/996-ATAG_DTB_COMPAT_CMDLINE_MANGLE.patch b/target/linux/oxnas/patches-4.4/996-ATAG_DTB_COMPAT_CMDLINE_MANGLE.patch index be15ec4772d..2a607c6c62f 100644 --- a/target/linux/oxnas/patches-4.4/996-ATAG_DTB_COMPAT_CMDLINE_MANGLE.patch +++ b/target/linux/oxnas/patches-4.4/996-ATAG_DTB_COMPAT_CMDLINE_MANGLE.patch @@ -18,7 +18,7 @@ Signed-off-by: Adrian Panella --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -1928,6 +1928,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN +@@ -1943,6 +1943,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN The command-line arguments provided by the boot loader will be appended to the the device tree bootargs property. diff --git a/target/linux/ramips/patches-4.4/0033-xhci-mediatek-support-MTK-xHCI-host-controller.patch b/target/linux/ramips/patches-4.4/0033-xhci-mediatek-support-MTK-xHCI-host-controller.patch index 5e5cfe20653..1bd29747b89 100644 --- a/target/linux/ramips/patches-4.4/0033-xhci-mediatek-support-MTK-xHCI-host-controller.patch +++ b/target/linux/ramips/patches-4.4/0033-xhci-mediatek-support-MTK-xHCI-host-controller.patch @@ -1420,7 +1420,7 @@ Signed-off-by: Greg Kroah-Hartman /* * Returns zero if the TRB isn't in this segment, otherwise it returns the DMA -@@ -3084,17 +3085,22 @@ static u32 xhci_td_remainder(struct xhci +@@ -3088,17 +3089,22 @@ static u32 xhci_td_remainder(struct xhci { u32 maxp, total_packet_count; @@ -1447,7 +1447,7 @@ Signed-off-by: Greg Kroah-Hartman /* Queueing functions don't count the current TRB into transferred */ return (total_packet_count - ((transferred + trb_buff_len) / maxp)); } -@@ -3482,7 +3488,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd * +@@ -3486,7 +3492,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd * field |= 0x1; /* xHCI 1.0/1.1 6.4.1.2.1: Transfer Type field */ diff --git a/target/linux/ramips/patches-4.4/0200-linkit_bootstrap.patch b/target/linux/ramips/patches-4.4/0200-linkit_bootstrap.patch index 70e8170c448..6e11075d544 100644 --- a/target/linux/ramips/patches-4.4/0200-linkit_bootstrap.patch +++ b/target/linux/ramips/patches-4.4/0200-linkit_bootstrap.patch @@ -1,6 +1,6 @@ --- a/drivers/misc/Makefile +++ b/drivers/misc/Makefile -@@ -56,3 +56,4 @@ obj-$(CONFIG_GENWQE) += genwqe/ +@@ -57,3 +57,4 @@ obj-$(CONFIG_GENWQE) += genwqe/ obj-$(CONFIG_ECHO) += echo/ obj-$(CONFIG_VEXPRESS_SYSCFG) += vexpress-syscfg.o obj-$(CONFIG_CXL_BASE) += cxl/