All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Prusakowski <jprusakowski@google.com>
To: zlang@kernel.org, fstests@vger.kernel.org
Cc: linux-f2fs-devel@lists.sourceforge.net, anand.jain@oracle.com,
	 wqu@suse.com, Jan Prusakowski <jprusakowski@google.com>
Subject: [PATCH] generic/050: handle f2fs as nojournal filesystem
Date: Fri, 10 Apr 2026 13:18:20 +0000	[thread overview]
Message-ID: <20260410131821.991005-1-jprusakowski@google.com> (raw)

F2FS uses a checkpoint mechanism for metadata consistency rather than a
traditional journal. Roll-forward recovery is only needed if there are
fsync'd files since the last checkpoint.

In this test case, files are created without fsync, so there is no
roll-forward data to replay during mount.

Therefore, F2FS does not need to write to the device to recover, and
successfully mounts on the read-only block device. Thus, it should be
treated as nojournal in this case.

Signed-off-by: Jan Prusakowski <jprusakowski@google.com>
---
 tests/generic/050 | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/tests/generic/050 b/tests/generic/050
index 3bc37175..3a641a65 100755
--- a/tests/generic/050
+++ b/tests/generic/050
@@ -46,6 +46,18 @@ elif [ "$FSTYP" = "btrfs" ]; then
 	# So for this test case, btrfs will not get any dirty log tree thus
 	# it can be treated as "nojournal".
 	features="nojournal"
+elif [ "$FSTYP" = "f2fs" ]; then
+	# F2FS uses a checkpoint mechanism for metadata consistency rather than a
+	# traditional journal. Roll-forward recovery is only needed if there are
+	# fsync'd files since the last checkpoint.
+	#
+	# In this test case, files are created without fsync, so there is no
+	# roll-forward data to replay during mount.
+	#
+	# Therefore, F2FS does not need to write to the device to recover, and
+	# successfully mounts on the read-only block device. Thus, it should be
+	# treated as "nojournal" in this case.
+	features="nojournal"
 fi
 _link_out_file "$features"
 
-- 
2.53.0.1213.gd9a14994de-goog


WARNING: multiple messages have this Message-ID (diff)
From: Jan Prusakowski via Linux-f2fs-devel <linux-f2fs-devel@lists.sourceforge.net>
To: zlang@kernel.org, fstests@vger.kernel.org
Cc: wqu@suse.com, anand.jain@oracle.com,
	linux-f2fs-devel@lists.sourceforge.net
Subject: [f2fs-dev] [PATCH] generic/050: handle f2fs as nojournal filesystem
Date: Fri, 10 Apr 2026 13:18:20 +0000	[thread overview]
Message-ID: <20260410131821.991005-1-jprusakowski@google.com> (raw)

F2FS uses a checkpoint mechanism for metadata consistency rather than a
traditional journal. Roll-forward recovery is only needed if there are
fsync'd files since the last checkpoint.

In this test case, files are created without fsync, so there is no
roll-forward data to replay during mount.

Therefore, F2FS does not need to write to the device to recover, and
successfully mounts on the read-only block device. Thus, it should be
treated as nojournal in this case.

Signed-off-by: Jan Prusakowski <jprusakowski@google.com>
---
 tests/generic/050 | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/tests/generic/050 b/tests/generic/050
index 3bc37175..3a641a65 100755
--- a/tests/generic/050
+++ b/tests/generic/050
@@ -46,6 +46,18 @@ elif [ "$FSTYP" = "btrfs" ]; then
 	# So for this test case, btrfs will not get any dirty log tree thus
 	# it can be treated as "nojournal".
 	features="nojournal"
+elif [ "$FSTYP" = "f2fs" ]; then
+	# F2FS uses a checkpoint mechanism for metadata consistency rather than a
+	# traditional journal. Roll-forward recovery is only needed if there are
+	# fsync'd files since the last checkpoint.
+	#
+	# In this test case, files are created without fsync, so there is no
+	# roll-forward data to replay during mount.
+	#
+	# Therefore, F2FS does not need to write to the device to recover, and
+	# successfully mounts on the read-only block device. Thus, it should be
+	# treated as "nojournal" in this case.
+	features="nojournal"
 fi
 _link_out_file "$features"
 
-- 
2.53.0.1213.gd9a14994de-goog



_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

             reply	other threads:[~2026-04-10 13:18 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-10 13:18 Jan Prusakowski [this message]
2026-04-10 13:18 ` [f2fs-dev] [PATCH] generic/050: handle f2fs as nojournal filesystem Jan Prusakowski via Linux-f2fs-devel
2026-04-14  7:57 ` Christoph Hellwig
2026-04-14  7:57   ` [f2fs-dev] " Christoph Hellwig
2026-04-16 16:47   ` Zorro Lang
2026-04-16 16:47     ` [f2fs-dev] " Zorro Lang
2026-04-17  7:42     ` Christoph Hellwig
2026-04-17  7:42       ` [f2fs-dev] " Christoph Hellwig
2026-04-16 16:44 ` Zorro Lang
2026-04-16 16:44   ` [f2fs-dev] " Zorro Lang
2026-04-17  2:59 ` Chao Yu
2026-04-17  2:59   ` Chao Yu via Linux-f2fs-devel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260410131821.991005-1-jprusakowski@google.com \
    --to=jprusakowski@google.com \
    --cc=anand.jain@oracle.com \
    --cc=fstests@vger.kernel.org \
    --cc=linux-f2fs-devel@lists.sourceforge.net \
    --cc=wqu@suse.com \
    --cc=zlang@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.