* [PATCH v2 1/4] tests/erofs_test: Fix mkfs.erofs version test to not use process substitution bashism
2025-11-10 3:56 [PATCH v2 0/4] EROFS test fixes and improvements Glenn Washburn
@ 2025-11-10 3:56 ` Glenn Washburn
2025-11-12 21:07 ` Daniel Kiper
2025-11-10 3:56 ` [PATCH v2 2/4] tests/erofs_test: Remove root check Glenn Washburn
` (3 subsequent siblings)
4 siblings, 1 reply; 7+ messages in thread
From: Glenn Washburn @ 2025-11-10 3:56 UTC (permalink / raw)
To: grub-devel; +Cc: Daniel Kiper, Leo Sandoval, Andrew Hamilton, Glenn Washburn
The shell used to run the tests is generally /bin/sh, which does not
support process substitution.
Fixes: b990df0bef9e (tests/util/grub-fs-tester: Fix EROFS label tests in grub-fs-tester)
Signed-off-by: Glenn Washburn <development@efficientek.com>
---
tests/util/grub-fs-tester.in | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/util/grub-fs-tester.in b/tests/util/grub-fs-tester.in
index cac58dafa8ad..106edfa8a0f4 100644
--- a/tests/util/grub-fs-tester.in
+++ b/tests/util/grub-fs-tester.in
@@ -596,11 +596,11 @@ for LOGSECSIZE in $(range "$MINLOGSECSIZE" "$MAXLOGSECSIZE" 1); do
| x"minix3" | xreiserfs_old)
NOFSLABEL=y;;
x"erofs_"*)
- MKFS_EROFS_VERSION=$(mkfs.erofs -V 2>/dev/null | tr ' ' '\n' | grep '^[0-9]')
- # check if the version is at least 1.6
- if [ $(sort -V <(echo "$MKFS_EROFS_VERSION") <(echo "1.6") | head -n 1) != "1.6" ]; then
+ VER=$(mkfs.erofs 2>/dev/null | head -n1 | (read _ V; echo $V))
+ if [ "$(echo -e "${VER}\n1.6" | sort -V | head -n1)" != "1.6" ]; then
NOFSLABEL=y
- fi
+ unset FSLABEL
+ fi;;
esac
PDIRCOMPNUM=210
--
2.34.1
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH v2 1/4] tests/erofs_test: Fix mkfs.erofs version test to not use process substitution bashism
2025-11-10 3:56 ` [PATCH v2 1/4] tests/erofs_test: Fix mkfs.erofs version test to not use process substitution bashism Glenn Washburn
@ 2025-11-12 21:07 ` Daniel Kiper
0 siblings, 0 replies; 7+ messages in thread
From: Daniel Kiper @ 2025-11-12 21:07 UTC (permalink / raw)
To: Glenn Washburn; +Cc: grub-devel, Leo Sandoval, Andrew Hamilton
On Sun, Nov 09, 2025 at 09:56:29PM -0600, Glenn Washburn wrote:
> The shell used to run the tests is generally /bin/sh, which does not
> support process substitution.
>
> Fixes: b990df0bef9e (tests/util/grub-fs-tester: Fix EROFS label tests in grub-fs-tester)
> Signed-off-by: Glenn Washburn <development@efficientek.com>
> ---
> tests/util/grub-fs-tester.in | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/tests/util/grub-fs-tester.in b/tests/util/grub-fs-tester.in
> index cac58dafa8ad..106edfa8a0f4 100644
> --- a/tests/util/grub-fs-tester.in
> +++ b/tests/util/grub-fs-tester.in
> @@ -596,11 +596,11 @@ for LOGSECSIZE in $(range "$MINLOGSECSIZE" "$MAXLOGSECSIZE" 1); do
> | x"minix3" | xreiserfs_old)
> NOFSLABEL=y;;
> x"erofs_"*)
> - MKFS_EROFS_VERSION=$(mkfs.erofs -V 2>/dev/null | tr ' ' '\n' | grep '^[0-9]')
> - # check if the version is at least 1.6
Why do you drop this comment?
> - if [ $(sort -V <(echo "$MKFS_EROFS_VERSION") <(echo "1.6") | head -n 1) != "1.6" ]; then
> + VER=$(mkfs.erofs 2>/dev/null | head -n1 | (read _ V; echo $V))
I would avoid here so generic name as VER. So, s/VER/MKFS_EROFS_VERSION/...
s/head -n1/head -n 1/
> + if [ "$(echo -e "${VER}\n1.6" | sort -V | head -n1)" != "1.6" ]; then
s/head -n1/head -n 1/
> NOFSLABEL=y
> - fi
> + unset FSLABEL
> + fi;;
> esac
Daniel
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 2/4] tests/erofs_test: Remove root check
2025-11-10 3:56 [PATCH v2 0/4] EROFS test fixes and improvements Glenn Washburn
2025-11-10 3:56 ` [PATCH v2 1/4] tests/erofs_test: Fix mkfs.erofs version test to not use process substitution bashism Glenn Washburn
@ 2025-11-10 3:56 ` Glenn Washburn
2025-11-10 3:56 ` [PATCH v2 3/4] tests/erofs_test: Disable filetime check for erofs_compact Glenn Washburn
` (2 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Glenn Washburn @ 2025-11-10 3:56 UTC (permalink / raw)
To: grub-devel; +Cc: Daniel Kiper, Leo Sandoval, Andrew Hamilton, Glenn Washburn
The erofs tests do not ever mount the generated erofs image. So root is
not needed, as with the squashfs and iso9660 filesystems.
Signed-off-by: Glenn Washburn <development@efficientek.com>
---
tests/erofs_test.in | 8 --------
1 file changed, 8 deletions(-)
diff --git a/tests/erofs_test.in b/tests/erofs_test.in
index 51111627acec..5b7678b1e234 100644
--- a/tests/erofs_test.in
+++ b/tests/erofs_test.in
@@ -2,14 +2,6 @@
set -e
-if [ "x$EUID" = "x" ] ; then
- EUID=`id -u`
-fi
-
-if [ "$EUID" != 0 ] ; then
- exit 99
-fi
-
if ! which mkfs.erofs >/dev/null 2>&1; then
echo "mkfs.erofs not installed; cannot test erofs."
exit 99
--
2.34.1
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH v2 3/4] tests/erofs_test: Disable filetime check for erofs_compact
2025-11-10 3:56 [PATCH v2 0/4] EROFS test fixes and improvements Glenn Washburn
2025-11-10 3:56 ` [PATCH v2 1/4] tests/erofs_test: Fix mkfs.erofs version test to not use process substitution bashism Glenn Washburn
2025-11-10 3:56 ` [PATCH v2 2/4] tests/erofs_test: Remove root check Glenn Washburn
@ 2025-11-10 3:56 ` Glenn Washburn
2025-11-10 3:56 ` [PATCH v2 4/4] tests/erofs_test: Improve accuracy of FSTIME check Glenn Washburn
2025-11-12 21:23 ` [PATCH v2 0/4] EROFS test fixes and improvements Daniel Kiper
4 siblings, 0 replies; 7+ messages in thread
From: Glenn Washburn @ 2025-11-10 3:56 UTC (permalink / raw)
To: grub-devel; +Cc: Daniel Kiper, Leo Sandoval, Andrew Hamilton, Glenn Washburn
Compact EROFS inodes do not allow for modification times that are
different from FS creation times. The file modification time check is
done between the EROFS image and the file system where test temporary
files are written to, not the files as seen from the mounted EROFS image.
So its likely that the file modification time will be different, more
so when run on slower systems.
Signed-off-by: Glenn Washburn <development@efficientek.com>
---
tests/util/grub-fs-tester.in | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tests/util/grub-fs-tester.in b/tests/util/grub-fs-tester.in
index 106edfa8a0f4..325e02546006 100644
--- a/tests/util/grub-fs-tester.in
+++ b/tests/util/grub-fs-tester.in
@@ -587,6 +587,10 @@ for LOGSECSIZE in $(range "$MINLOGSECSIZE" "$MAXLOGSECSIZE" 1); do
# FS LIMITATION: romfs has no timestamps.
x"romfs")
NOFILETIME=y; NOFSTIME=y;;
+ # FS LIMITATION: Compact inodes do not allow for modification
+ # times that are different from FS creation times.
+ x"erofs_compact")
+ NOFILETIME=y;;
esac
NOFSLABEL=n
--
2.34.1
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 4/4] tests/erofs_test: Improve accuracy of FSTIME check
2025-11-10 3:56 [PATCH v2 0/4] EROFS test fixes and improvements Glenn Washburn
` (2 preceding siblings ...)
2025-11-10 3:56 ` [PATCH v2 3/4] tests/erofs_test: Disable filetime check for erofs_compact Glenn Washburn
@ 2025-11-10 3:56 ` Glenn Washburn
2025-11-12 21:23 ` [PATCH v2 0/4] EROFS test fixes and improvements Daniel Kiper
4 siblings, 0 replies; 7+ messages in thread
From: Glenn Washburn @ 2025-11-10 3:56 UTC (permalink / raw)
To: grub-devel; +Cc: Daniel Kiper, Leo Sandoval, Andrew Hamilton, Glenn Washburn
On resource constrained test runs, the last modification time on the
image is an unreliable date to check against the filesystem creation
time. Use dump.erofs to get the filesystem creation time from the
superblock. This should get the timestamp as shown by GRUB's ls -l.
Signed-off-by: Glenn Washburn <development@efficientek.com>
---
tests/util/grub-fs-tester.in | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/tests/util/grub-fs-tester.in b/tests/util/grub-fs-tester.in
index 325e02546006..d4fe3f014084 100644
--- a/tests/util/grub-fs-tester.in
+++ b/tests/util/grub-fs-tester.in
@@ -1488,6 +1488,12 @@ for LOGSECSIZE in $(range "$MINLOGSECSIZE" "$MAXLOGSECSIZE" 1); do
# With some abstractions like mdraid flushing to disk
# may be delayed for a long time.
FSTIME="$UMOUNT_TIME";;
+ x"erofs_"*)
+ # Creating the erofs image may take more than a few
+ # seconds. Use the more accurate timestamp from the
+ # superblock.
+ FSTIME="$(dump.erofs -s "${FSIMAGEP}0.img" | grep ^"Filesystem created:" | (read _ _ REST; echo $REST) )"
+ FSTIME="$(date -d "$FSTIME" -u '+%Y-%m-%d %H:%M:%S')";;
xsquash*)
# Creating the squash image may take more than a few
# seconds. Use the more accurate timestamp from the
--
2.34.1
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH v2 0/4] EROFS test fixes and improvements
2025-11-10 3:56 [PATCH v2 0/4] EROFS test fixes and improvements Glenn Washburn
` (3 preceding siblings ...)
2025-11-10 3:56 ` [PATCH v2 4/4] tests/erofs_test: Improve accuracy of FSTIME check Glenn Washburn
@ 2025-11-12 21:23 ` Daniel Kiper
4 siblings, 0 replies; 7+ messages in thread
From: Daniel Kiper @ 2025-11-12 21:23 UTC (permalink / raw)
To: Glenn Washburn; +Cc: grub-devel, Leo Sandoval, Andrew Hamilton
On Sun, Nov 09, 2025 at 09:56:28PM -0600, Glenn Washburn wrote:
> v2 updates:
> * The first patch was from the wrong branch and needed to be modified.
>
> Glenn
>
> Glenn Washburn (4):
> tests/erofs_test: Fix mkfs.erofs version test to not use process
> substitution bashism
> tests/erofs_test: Remove root check
> tests/erofs_test: Disable filetime check for erofs_compact
> tests/erofs_test: Improve accuracy of FSTIME check
For all but first one Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>...
Daniel
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel
^ permalink raw reply [flat|nested] 7+ messages in thread