[source] fstools: backport fixes from master branch

LEDE Commits lede-commits at lists.infradead.org
Tue Jul 11 14:37:50 PDT 2017


dangole pushed a commit to source.git, branch lede-17.01:
https://git.lede-project.org/7896d7b81499b9edc6a6fd2ce1a1e3585992a2fe

commit 7896d7b81499b9edc6a6fd2ce1a1e3585992a2fe
Author: Daniel Golle <daniel at makrotopia.org>
AuthorDate: Tue Jul 11 23:30:10 2017 +0200

    fstools: backport fixes from master branch
    
    The following changes are backported from the master branch
    
    bdcb075 libfstools: fix matching device name
    (f038a61 on master)
    
    ef2d438 fstools: use -Wno-format-truncation instead of -Wno-error=format-truncation
    (c43ae11 on master)
    
    d361923 build: disable the format-truncation warning error to fix gcc 7 build errors
    (a19f2b3 on master)
    
    cddc830 libfstools: silence mkfs.{ext4,f2fs}
    (88d48d5 on master)
    
    be5004c libfstools: add basic documentation of mount functions
    (92b4c2c on master)
    
    34d36c2 add missing includes
    (7d78836 on master)
    
    A previously added hotfix was replaced by a git commit, hence the patch
    file is removed and we got instead
    
    45c2a6f libfstools: fix multiple volume_identify usages with the same volume
    (633a8d0 on master)
    
    Signed-off-by: Daniel Golle <daniel at makrotopia.org>
---
 package/system/fstools/Makefile                    |  8 ++--
 ...fix-multiple-volume_identify-usages-with-.patch | 56 ----------------------
 2 files changed, 4 insertions(+), 60 deletions(-)

diff --git a/package/system/fstools/Makefile b/package/system/fstools/Makefile
index 28f68b5..43febd4 100644
--- a/package/system/fstools/Makefile
+++ b/package/system/fstools/Makefile
@@ -12,10 +12,10 @@ PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL=$(LEDE_GIT)/project/fstools.git
-PKG_SOURCE_DATE:=2016-12-04
-PKG_SOURCE_VERSION:=84b530a732b12cca1cd5ee9ba163b7ead7a83de3
-PKG_MIRROR_HASH:=b607138de1adbb7f49e53daebe28ac1352910fa2b29278365edeabafc5b46a91
-PKG_RELEASE:=2
+PKG_SOURCE_DATE:=2017-06-30
+PKG_SOURCE_VERSION:=bdcb075fafdac0bfe3207c23f64acd58432bad86
+PKG_MIRROR_HASH:=760a1fdbd379f1191947ac6ba9881a85a9b8c43f4a96d49db18d4654b0c312c4
+PKG_RELEASE:=1
 CMAKE_INSTALL:=1
 
 PKG_LICENSE:=GPL-2.0
diff --git a/package/system/fstools/patches/0001-libfstools-fix-multiple-volume_identify-usages-with-.patch b/package/system/fstools/patches/0001-libfstools-fix-multiple-volume_identify-usages-with-.patch
deleted file mode 100644
index 4a3809a..0000000
--- a/package/system/fstools/patches/0001-libfstools-fix-multiple-volume_identify-usages-with-.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 633a8d0981fed0c90f6d16ee2257858b04514dc8 Mon Sep 17 00:00:00 2001
-From: Pieter Smith <pieter.smith at philips.com>
-Date: Wed, 29 Mar 2017 18:21:56 +0200
-Subject: [PATCH] libfstools: fix multiple volume_identify usages with the same
- volume
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes e.g. factory-flashed startup issue with jffs2 on ubi overlay
-
-Commit ba019965 ("libfstools: accept volume as argument in most calls")
-broke startup for factory-flashed jffs2 on ubi systems, causing substantial
-slowdown in factory environments.
-
-When starting up with a factory-flashed jffs2 on ubi system, the "rootfs_data"
-volume contains a deadcode marker. In the start phase, mount_root then mounts a
-tmpfs overlay, and postpones remounting of the jffs2 overlay until the done
-phase of the startup.
-
-The refactoring in ba019965 eliminated an unneeded call to volume_find() when
-done() called jffs2_switch(). Unfortunately the refactoring did not take into
-account that volume_identify() does not function correctly when called twice in
-a row on the same struct volume when using an mtd driver.
-
-mtd_volume_identify() uses mtd_volume_load() to open an fd to the mtd device
-and reads a potential deadcode marker from the fd. The first time this works,
-and FS_DEADCODE is returned.
-
-When volume_identify() is called a second time however, mtd_volume_load()
-notices that we already have an open fd, does nothing further and returns 0
-without resetting the file offset to 0. mtd_volume_identify() now reads past
-the deadcode marker and now returns FS_JFFS2 if the mtd device is a UBIVOLUME.
-
-jffs2_switch() then handles the wrong case, either pulling the root out from
-under user-space in Chaos Calmer, or indefinitely sticking to a tmpfs overlay
-in later OpenWRT builds.
-
-Signed-off-by: Pieter Smith <pieter.smith at philips.com>
-Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
----
-
---- a/libfstools/mtd.c
-+++ b/libfstools/mtd.c
-@@ -76,8 +76,10 @@ static int mtd_volume_load(struct mtd_vo
- 	struct mtd_info_user mtdInfo;
- 	struct erase_info_user mtdLockInfo;
- 
--	if (p->fd)
-+	if (p->fd) {
-+		lseek(p->fd, 0, SEEK_SET);
- 		return 0;
-+	}
- 
- 	if (!p->chr)
- 		return -1;



More information about the lede-commits mailing list