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
reply other threads:[~2026-04-10 13:18 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox