kernel: bump 4.14 to 4.14.70
authorKoen Vandeputte <koen.vandeputte@ncentric.com>
Mon, 17 Sep 2018 09:52:06 +0000 (11:52 +0200)
committerKoen Vandeputte <koen.vandeputte@ncentric.com>
Mon, 17 Sep 2018 13:47:44 +0000 (15:47 +0200)
Refreshed all patches.

Added new patch:
- 192-Revert-ubifs-xattr-Don-t-operate-on-deleted-inodes.patch

This fixes a bug introduced in upstream 4.14.68 which caused targets using
ubifs to produce file-system errors on boot, rendering them useless.

Compile-tested on: cns3xxx, imx6, x86_64
Runtime-tested on: cns3xxx, imx6, x86_64

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
12 files changed:
include/kernel-version.mk
target/linux/ath79/patches-4.14/404-mtd-cybertan-trx-parser.patch
target/linux/generic/backport-4.14/320-v4.16-netfilter-nf_conntrack-add-IPS_OFFLOAD-status-bit.patch
target/linux/generic/pending-4.14/192-Revert-ubifs-xattr-Don-t-operate-on-deleted-inodes.patch [new file with mode: 0644]
target/linux/generic/pending-4.14/495-mtd-core-add-get_mtd_device_by_node.patch
target/linux/generic/pending-4.14/496-dt-bindings-add-bindings-for-mtd-concat-devices.patch
target/linux/generic/pending-4.14/497-mtd-mtdconcat-add-dt-driver-for-concat-devices.patch
target/linux/mvebu/patches-4.14/421-rtc-armada38x-reset-after-rtc-power-loss.patch
target/linux/pistachio/patches-4.14/413-mtd-Introduce-SPI-NAND-framework.patch
target/linux/ramips/patches-4.14/0003-MIPS-Fix-memory-reservation-in-bootmem_init-for-cert.patch
target/linux/ramips/patches-4.14/0051-serial-add-ugly-custom-baud-rate-hack.patch
target/linux/zynq/patches-4.14/022-v4.19-dts-set-correct-manufacturer-for-ZedBoard-and-MicroZed.patch

index 69528c6..6d270c5 100644 (file)
@@ -2,13 +2,13 @@
 
 LINUX_RELEASE?=1
 
-LINUX_VERSION-4.14 = .68
 LINUX_VERSION-3.18 = .122
 LINUX_VERSION-4.9 = .127
+LINUX_VERSION-4.14 = .70
 
-LINUX_KERNEL_HASH-4.14.68 = 791dbf1597033bf2b61e83307d78188ffc1ad4bdd1da3234876667edfdd28690
 LINUX_KERNEL_HASH-3.18.122 = 675b1ce36af23caa500cb1d4f0ec2976791fb0a97ebb6486a5e2ebcb5527ade5
 LINUX_KERNEL_HASH-4.9.127 = 9477aeaded97589a40d7cbbfeebfa7a8f863130c0729a8dc5cdbcf48eb6fdd0f
+LINUX_KERNEL_HASH-4.14.70 = c5dfd832477f8856b5b094ab62cc8c8491d04b76b2ec5ebb0126e554891ee32c
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
 sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
index 2d2a042..3cc0b0d 100644 (file)
@@ -1,10 +1,10 @@
---- a/drivers/mtd/parsers/Makefile     2018-08-12 02:32:47.951243067 +0200
-+++ b/drivers/mtd/parsers/Makefile     2018-08-12 02:33:09.844626814 +0200
+--- a/drivers/mtd/parsers/Makefile
++++ b/drivers/mtd/parsers/Makefile
 @@ -1 +1,2 @@
 +obj-$(CONFIG_MTD_PARSER_CYBERTAN)     += parser_cybertan.o
  obj-$(CONFIG_MTD_PARSER_TRX)          += parser_trx.o
---- a/drivers/mtd/parsers/Kconfig      2018-08-12 02:28:43.987357803 +0200
-+++ b/drivers/mtd/parsers/Kconfig      2018-08-12 02:32:23.237852972 +0200
+--- a/drivers/mtd/parsers/Kconfig
++++ b/drivers/mtd/parsers/Kconfig
 @@ -1,3 +1,11 @@
 +config MTD_PARSER_CYBERTAN
 +      tristate "Parser for Cybertan format partitions"
index 9d6ce98..5aae823 100644 (file)
@@ -90,7 +90,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
                                expired_count++;
 --- a/net/netfilter/nf_conntrack_netlink.c
 +++ b/net/netfilter/nf_conntrack_netlink.c
-@@ -1105,6 +1105,14 @@ static const struct nla_policy ct_nla_po
+@@ -1120,6 +1120,14 @@ static const struct nla_policy ct_nla_po
                                    .len = NF_CT_LABELS_MAX_SIZE },
  };
  
@@ -105,7 +105,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
  static int ctnetlink_flush_conntrack(struct net *net,
                                     const struct nlattr * const cda[],
                                     u32 portid, int report)
-@@ -1117,7 +1125,7 @@ static int ctnetlink_flush_conntrack(str
+@@ -1132,7 +1140,7 @@ static int ctnetlink_flush_conntrack(str
                        return PTR_ERR(filter);
        }
  
@@ -114,7 +114,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
                                  portid, report);
        kfree(filter);
  
-@@ -1163,6 +1171,11 @@ static int ctnetlink_del_conntrack(struc
+@@ -1178,6 +1186,11 @@ static int ctnetlink_del_conntrack(struc
  
        ct = nf_ct_tuplehash_to_ctrack(h);
  
diff --git a/target/linux/generic/pending-4.14/192-Revert-ubifs-xattr-Don-t-operate-on-deleted-inodes.patch b/target/linux/generic/pending-4.14/192-Revert-ubifs-xattr-Don-t-operate-on-deleted-inodes.patch
new file mode 100644 (file)
index 0000000..cd9a758
--- /dev/null
@@ -0,0 +1,96 @@
+From a99708737f566c70651015332e89d0d3b1eb5529 Mon Sep 17 00:00:00 2001
+From: Koen Vandeputte <koen.vandeputte@ncentric.com>
+Date: Mon, 17 Sep 2018 10:13:09 +0200
+Subject: [PATCH] Revert "ubifs: xattr: Don't operate on deleted inodes"
+
+This reverts commit 8a23348d76a1e7716da6e76383281ac82fc071cf.
+
+UBIFS wants to assert that xattr operations are only issued on files
+with positive link count. The said patch made this operations return
+-ENOENT for unlinked files such that the asserts will no longer trigger.
+This was wrong since xattr operations are perfectly fine on unlinked
+files.
+Instead the assertions need to be fixed/removed.
+
+Fixes: 11a6fc3dc743 ("ubifs: xattr: Don't operate on deleted inodes")
+Reported-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
+Signed-off-by: Richard Weinberger <richard@nod.at>
+---
+ fs/ubifs/xattr.c | 24 ------------------------
+ 1 file changed, 24 deletions(-)
+
+--- a/fs/ubifs/xattr.c
++++ b/fs/ubifs/xattr.c
+@@ -152,12 +152,6 @@ static int create_xattr(struct ubifs_inf
+       ui->data_len = size;
+       mutex_lock(&host_ui->ui_mutex);
+-
+-      if (!host->i_nlink) {
+-              err = -ENOENT;
+-              goto out_noent;
+-      }
+-
+       host->i_ctime = current_time(host);
+       host_ui->xattr_cnt += 1;
+       host_ui->xattr_size += CALC_DENT_SIZE(fname_len(nm));
+@@ -189,7 +183,6 @@ out_cancel:
+       host_ui->xattr_size -= CALC_XATTR_BYTES(size);
+       host_ui->xattr_names -= fname_len(nm);
+       host_ui->flags &= ~UBIFS_CRYPT_FL;
+-out_noent:
+       mutex_unlock(&host_ui->ui_mutex);
+ out_free:
+       make_bad_inode(inode);
+@@ -241,12 +234,6 @@ static int change_xattr(struct ubifs_inf
+       mutex_unlock(&ui->ui_mutex);
+       mutex_lock(&host_ui->ui_mutex);
+-
+-      if (!host->i_nlink) {
+-              err = -ENOENT;
+-              goto out_noent;
+-      }
+-
+       host->i_ctime = current_time(host);
+       host_ui->xattr_size -= CALC_XATTR_BYTES(old_size);
+       host_ui->xattr_size += CALC_XATTR_BYTES(size);
+@@ -268,7 +255,6 @@ static int change_xattr(struct ubifs_inf
+ out_cancel:
+       host_ui->xattr_size -= CALC_XATTR_BYTES(size);
+       host_ui->xattr_size += CALC_XATTR_BYTES(old_size);
+-out_noent:
+       mutex_unlock(&host_ui->ui_mutex);
+       make_bad_inode(inode);
+ out_free:
+@@ -497,12 +483,6 @@ static int remove_xattr(struct ubifs_inf
+               return err;
+       mutex_lock(&host_ui->ui_mutex);
+-
+-      if (!host->i_nlink) {
+-              err = -ENOENT;
+-              goto out_noent;
+-      }
+-
+       host->i_ctime = current_time(host);
+       host_ui->xattr_cnt -= 1;
+       host_ui->xattr_size -= CALC_DENT_SIZE(fname_len(nm));
+@@ -522,7 +502,6 @@ out_cancel:
+       host_ui->xattr_size += CALC_DENT_SIZE(fname_len(nm));
+       host_ui->xattr_size += CALC_XATTR_BYTES(ui->data_len);
+       host_ui->xattr_names += fname_len(nm);
+-out_noent:
+       mutex_unlock(&host_ui->ui_mutex);
+       ubifs_release_budget(c, &req);
+       make_bad_inode(inode);
+@@ -562,9 +541,6 @@ static int ubifs_xattr_remove(struct ino
+       ubifs_assert(inode_is_locked(host));
+-      if (!host->i_nlink)
+-              return -ENOENT;
+-
+       if (fname_len(&nm) > UBIFS_MAX_NLEN)
+               return -ENAMETOOLONG;
index 32a87d3..b9c6bd0 100644 (file)
@@ -15,11 +15,9 @@ Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
  include/linux/mtd/mtd.h |  2 ++
  2 files changed, 40 insertions(+)
 
-diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c
-index e7ea842ba3db..1134bb81d2e5 100644
 --- a/drivers/mtd/mtdcore.c
 +++ b/drivers/mtd/mtdcore.c
-@@ -936,6 +936,44 @@ struct mtd_info *get_mtd_device_nm(const char *name)
+@@ -922,6 +922,44 @@ out_unlock:
  }
  EXPORT_SYMBOL_GPL(get_mtd_device_nm);
  
@@ -64,11 +62,9 @@ index e7ea842ba3db..1134bb81d2e5 100644
  void put_mtd_device(struct mtd_info *mtd)
  {
        mutex_lock(&mtd_table_mutex);
-diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h
-index 6cd0f6b7658b..cf7c8030cd8e 100644
 --- a/include/linux/mtd/mtd.h
 +++ b/include/linux/mtd/mtd.h
-@@ -557,6 +557,8 @@ extern struct mtd_info *get_mtd_device(struct mtd_info *mtd, int num);
+@@ -579,6 +579,8 @@ extern struct mtd_info *get_mtd_device(s
  extern int __get_mtd_device(struct mtd_info *mtd);
  extern void __put_mtd_device(struct mtd_info *mtd);
  extern struct mtd_info *get_mtd_device_nm(const char *name);
@@ -77,6 +73,3 @@ index 6cd0f6b7658b..cf7c8030cd8e 100644
  extern void put_mtd_device(struct mtd_info *mtd);
  
  
--- 
-2.18.0
-
index 99fdb0d..01f3b9e 100644 (file)
@@ -11,9 +11,6 @@ Signed-off-by: Bernhard Frauendienst <kernel@nospam.obeliks.de>
  1 file changed, 36 insertions(+)
  create mode 100644 Documentation/devicetree/bindings/mtd/mtd-concat.txt
 
-diff --git a/Documentation/devicetree/bindings/mtd/mtd-concat.txt b/Documentation/devicetree/bindings/mtd/mtd-concat.txt
-new file mode 100644
-index 000000000000..2daf3157b163
 --- /dev/null
 +++ b/Documentation/devicetree/bindings/mtd/mtd-concat.txt
 @@ -0,0 +1,36 @@
@@ -53,6 +50,3 @@ index 000000000000..2daf3157b163
 +              };
 +      }
 +}
--- 
-2.18.0
-
index 0c5ac5b..94acc88 100644 (file)
@@ -41,31 +41,24 @@ Signed-off-by: Bernhard Frauendienst <kernel@nospam.obeliks.de>
  create mode 100644 drivers/mtd/composite/Makefile
  create mode 100644 drivers/mtd/composite/virt_concat.c
 
-diff --git a/drivers/mtd/Kconfig b/drivers/mtd/Kconfig
-index 5a2d71729b9a..de18bc568e3e 100644
 --- a/drivers/mtd/Kconfig
 +++ b/drivers/mtd/Kconfig
-@@ -342,4 +342,6 @@ source "drivers/mtd/spi-nor/Kconfig"
+@@ -377,4 +377,6 @@ source "drivers/mtd/spi-nor/Kconfig"
  
  source "drivers/mtd/ubi/Kconfig"
  
 +source "drivers/mtd/composite/Kconfig"
 +
  endif # MTD
-diff --git a/drivers/mtd/Makefile b/drivers/mtd/Makefile
-index d6f8f625e1ff..a6c5f134c35d 100644
 --- a/drivers/mtd/Makefile
 +++ b/drivers/mtd/Makefile
-@@ -36,3 +36,6 @@ obj-y                += chips/ lpddr/ maps/ devices/ nand/ onenand/ tests/
+@@ -39,3 +39,6 @@ obj-y                += chips/ lpddr/ maps/ devices/ n
  
  obj-$(CONFIG_MTD_SPI_NOR)     += spi-nor/
  obj-$(CONFIG_MTD_UBI)         += ubi/
 +
 +# Composite drivers must be loaded last
 +obj-y         += composite/
-diff --git a/drivers/mtd/composite/Kconfig b/drivers/mtd/composite/Kconfig
-new file mode 100644
-index 000000000000..0490fc0284bb
 --- /dev/null
 +++ b/drivers/mtd/composite/Kconfig
 @@ -0,0 +1,12 @@
@@ -81,9 +74,6 @@ index 000000000000..0490fc0284bb
 +        used as one device with partitions spanning across device boundaries.
 +
 +endmenu
-diff --git a/drivers/mtd/composite/Makefile b/drivers/mtd/composite/Makefile
-new file mode 100644
-index 000000000000..8421a0a30606
 --- /dev/null
 +++ b/drivers/mtd/composite/Makefile
 @@ -0,0 +1,6 @@
@@ -93,9 +83,6 @@ index 000000000000..8421a0a30606
 +#
 +
 +obj-$(CONFIG_MTD_VIRT_CONCAT)   += virt_concat.o
-diff --git a/drivers/mtd/composite/virt_concat.c b/drivers/mtd/composite/virt_concat.c
-new file mode 100644
-index 000000000000..bfd432188c35
 --- /dev/null
 +++ b/drivers/mtd/composite/virt_concat.c
 @@ -0,0 +1,128 @@
@@ -227,6 +214,3 @@ index 000000000000..bfd432188c35
 +MODULE_LICENSE("GPL v2");
 +MODULE_AUTHOR("Bernhard Frauendienst <kernel@nospam.obeliks.de>");
 +MODULE_DESCRIPTION("Virtual concat MTD device driver");
--- 
-2.18.0
-
index e9291c4..885e3d7 100644 (file)
@@ -18,8 +18,6 @@ Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
  drivers/rtc/rtc-armada38x.c | 23 +++++++++++++++++++++++
  1 file changed, 23 insertions(+)
 
-diff --git a/drivers/rtc/rtc-armada38x.c b/drivers/rtc/rtc-armada38x.c
-index 1e4978c..bde53c8c 100644
 --- a/drivers/rtc/rtc-armada38x.c
 +++ b/drivers/rtc/rtc-armada38x.c
 @@ -30,6 +30,8 @@
@@ -39,7 +37,7 @@ index 1e4978c..bde53c8c 100644
        struct value_to_freq *val_to_freq;
        struct armada38x_rtc_data *data;
  };
-@@ -226,6 +229,23 @@ static int armada38x_rtc_read_time(struct device *dev, struct rtc_time *tm)
+@@ -226,6 +229,23 @@ static int armada38x_rtc_read_time(struc
        return 0;
  }
  
@@ -63,7 +61,7 @@ index 1e4978c..bde53c8c 100644
  static int armada38x_rtc_set_time(struct device *dev, struct rtc_time *tm)
  {
        struct armada38x_rtc *rtc = dev_get_drvdata(dev);
-@@ -237,6 +257,9 @@ static int armada38x_rtc_set_time(struct device *dev, struct rtc_time *tm)
+@@ -237,6 +257,9 @@ static int armada38x_rtc_set_time(struct
        if (ret)
                goto out;
  
@@ -73,6 +71,3 @@ index 1e4978c..bde53c8c 100644
        spin_lock_irqsave(&rtc->lock, flags);
        rtc_delayed_write(time, rtc, RTC_TIME);
        spin_unlock_irqrestore(&rtc->lock, flags);
--- 
-2.7.4
-
index fe93b21..d1189ee 100644 (file)
@@ -57,13 +57,14 @@ Signed-off-by: Ian Pozella <Ian.Pozella@imgtec.com>
  source "drivers/mtd/ubi/Kconfig"
 --- a/drivers/mtd/Makefile
 +++ b/drivers/mtd/Makefile
-@@ -37,5 +37,6 @@ inftl-objs           := inftlcore.o inftlmount.o
+@@ -37,6 +37,7 @@ inftl-objs           := inftlcore.o inftlmount.o
  
  obj-y         += chips/ lpddr/ maps/ devices/ nand/ onenand/ tests/
  
 +obj-$(CONFIG_MTD_SPI_NAND)    += spi-nand/
  obj-$(CONFIG_MTD_SPI_NOR)     += spi-nor/
  obj-$(CONFIG_MTD_UBI)         += ubi/
 --- /dev/null
 +++ b/drivers/mtd/spi-nand/Kconfig
 @@ -0,0 +1,7 @@
index d47f27e..77f2622 100644 (file)
@@ -14,8 +14,8 @@ This patch adds the originally intended prerequisite again.
 Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
 ---
 
---- a/arch/mips/kernel/setup.c        2018-08-18 19:07:07.142066706 +0200
-+++ b/arch/mips/kernel/setup.c        2018-08-18 19:10:17.827918423 +0200
+--- a/arch/mips/kernel/setup.c
++++ b/arch/mips/kernel/setup.c
 @@ -369,6 +369,8 @@ static unsigned long __init bootmap_byte
        return ALIGN(bytes, sizeof(long));
  }
index b71d8f3..634033d 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
 
 --- a/drivers/tty/serial/serial_core.c
 +++ b/drivers/tty/serial/serial_core.c
-@@ -411,6 +411,9 @@ uart_get_baud_rate(struct uart_port *por
+@@ -418,6 +418,9 @@ uart_get_baud_rate(struct uart_port *por
                break;
        }
  
index 1f01a0b..3091846 100644 (file)
@@ -14,8 +14,6 @@ Signed-off-by: Michal Simek <michal.simek@xilinx.com>
  arch/arm/boot/dts/zynq-zed.dts      | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
-diff --git a/arch/arm/boot/dts/zynq-microzed.dts b/arch/arm/boot/dts/zynq-microzed.dts
-index aa4a0b6defb84..574ef22761827 100644
 --- a/arch/arm/boot/dts/zynq-microzed.dts
 +++ b/arch/arm/boot/dts/zynq-microzed.dts
 @@ -16,7 +16,7 @@
@@ -27,8 +25,6 @@ index aa4a0b6defb84..574ef22761827 100644
  
        aliases {
                ethernet0 = &gem0;
-diff --git a/arch/arm/boot/dts/zynq-zed.dts b/arch/arm/boot/dts/zynq-zed.dts
-index 252153913a157..cd93009067266 100644
 --- a/arch/arm/boot/dts/zynq-zed.dts
 +++ b/arch/arm/boot/dts/zynq-zed.dts
 @@ -16,7 +16,7 @@