Re: [f2fs-dev] [PATCH] generic/066: attr1 is still there after log replay on f2fs

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



On 2022/2/28 11:57, Sun Ke via Linux-f2fs-devel wrote:
The test fail on f2fs:
      xattr names and values after second fsync log replay:
      # file: SCRATCH_MNT/foobar
     +user.attr1="val1"
      user.attr3="val3"

attr1 is still there after log replay.
I guess it is f2fs's special feature to improve the performance.

Signed-off-by: Sun Ke <sunke32@xxxxxxxxxx>
---

Is it a BUG on f2fs?

I don't think so, it fails due to f2fs doesn't follow recovery rule which
btrfs/ext4/xfs does, but it doesn't mean f2fs has break posix semantics of
fsync().

Could you please try fastboot mountpoint? It may help to pass this testcase.

Thanks,

  .gitignore                                 |  1 +
  tests/generic/066                          |  3 +++
  tests/generic/066.cfg                      |  1 +
  tests/generic/{066.out => 066.out.default} |  0
  tests/generic/066.out.f2fs                 | 11 +++++++++++
  5 files changed, 16 insertions(+)
  create mode 100644 tests/generic/066.cfg
  rename tests/generic/{066.out => 066.out.default} (100%)
  create mode 100644 tests/generic/066.out.f2fs

diff --git a/.gitignore b/.gitignore
index 65b93307..135742f5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -194,6 +194,7 @@ tags
  /src/perf/*.pyc
# Symlinked files
+/tests/generic/066.out
  /tests/generic/035.out
  /tests/generic/050.out
  /tests/xfs/033.out
diff --git a/tests/generic/066 b/tests/generic/066
index 105a7acd..524dc82d 100755
--- a/tests/generic/066
+++ b/tests/generic/066
@@ -17,6 +17,7 @@
  #
  #  Btrfs: remove deleted xattrs on fsync log replay
  #
+seqfull=$0
  . ./common/preamble
  _begin_fstest auto quick attr metadata log
@@ -32,6 +33,8 @@ _cleanup()
  . ./common/dmflakey
  . ./common/attr
+# Select appropriate golden output based on fstype
+_link_out_file
  # real QA test starts here
  _supported_fs generic
  _require_scratch
diff --git a/tests/generic/066.cfg b/tests/generic/066.cfg
new file mode 100644
index 00000000..c25641be
--- /dev/null
+++ b/tests/generic/066.cfg
@@ -0,0 +1 @@
+f2fs: f2fs
diff --git a/tests/generic/066.out b/tests/generic/066.out.default
similarity index 100%
rename from tests/generic/066.out
rename to tests/generic/066.out.default
diff --git a/tests/generic/066.out.f2fs b/tests/generic/066.out.f2fs
new file mode 100644
index 00000000..8fc58693
--- /dev/null
+++ b/tests/generic/066.out.f2fs
@@ -0,0 +1,11 @@
+QA output created by 066
+xattr names and values after first fsync log replay:
+# file: SCRATCH_MNT/foobar
+user.attr1="val1"
+user.attr3="val3"
+
+xattr names and values after second fsync log replay:
+# file: SCRATCH_MNT/foobar
+user.attr1="val1"
+user.attr3="val3"
+



[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux