Re: [xfstests PATCH] generic/567: add partial pages zeroing out case

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

 



On 2024/12/30 12:16, Nirjhar Roy wrote:
> 
> On 12/27/24 13:59, Zhang Yi wrote:
>> On 2024/12/27 13:28, Nirjhar Roy wrote:
>>> On Mon, 2024-12-23 at 10:39 +0800, Zhang Yi wrote:
>>>> From: Zhang Yi <yi.zhang@xxxxxxxxxx>
>>>>
>>>> This addresses a data corruption issue encountered during partial
>>>> page
>>>> zeroing in ext4 which the block size is smaller than the page size
>>>> [1].
>>>> Expand this test to include a zeroing range test that spans two
>>>> partial
>>>> pages to cover this case.
>>>>
>>>> Link:
>>>> https://lore.kernel.org/linux-ext4/20241220011637.1157197-2-yi.zhang@xxxxxxxxxxxxxxx/
>>>>   [1]
>>>> Signed-off-by: Zhang Yi <yi.zhang@xxxxxxxxxx>
>>>> ---
>>>>   tests/generic/567     | 50 +++++++++++++++++++++++++--------------
>>>> ----
>>>>   tests/generic/567.out | 18 ++++++++++++++++
>>>>   2 files changed, 47 insertions(+), 21 deletions(-)
>>>>
>>>> diff --git a/tests/generic/567 b/tests/generic/567
>>>> index fc109d0d..756280e8 100755
>>>> --- a/tests/generic/567
>>>> +++ b/tests/generic/567
>>>> @@ -4,43 +4,51 @@
>>>>   #
>>>>   # FS QA Test No. generic/567
>>>>   #
>>>> -# Test mapped writes against punch-hole to ensure we get the data
>>>> -# correctly written. This can expose data corruption bugs on
>>>> filesystems
>>>> -# where the block size is smaller than the page size.
>>>> +# Test mapped writes against punch-hole and zero-range to ensure we
>>>> get
>>>> +# the data correctly written. This can expose data corruption bugs
>>>> on
>>>> +# filesystems where the block size is smaller than the page size.
>>>>   #
>>>>   # (generic/029 is a similar test but for truncate.)
>>>>   #
>>>>   . ./common/preamble
>>>> -_begin_fstest auto quick rw punch
>>>> +_begin_fstest auto quick rw punch zero
>>>>     # Import common functions.
>>>>   . ./common/filter
>>>>     _require_scratch
>>>>   _require_xfs_io_command "fpunch"
>>>> +_require_xfs_io_command "fzero"
>>>>     testfile=$SCRATCH_MNT/testfile
>>>>     _scratch_mkfs > /dev/null 2>&1
>>> Since this test requires block size < page size, do you think it is a
>>> good idea to hard code the _scratch_mkfs parameters to explicitly pass
>>> the block size to < less than zero? This will require less manipulation
>>> with the local.config file. Or maybe have a _notrun to _notrun the test
>>> if the block size is not less than the page size?
>> Hi, Nirjhar. Thank you for the review!
>>
>> Although the issue we encountered is on the configuration that block
>> size is less than page size, I believe it is also harmless to run this
>> test in an environment where the block size is equal to the page size.
>> This is a quick and basic test.
> Okay makes sense. So with block size equal to page size, the actual functionality that we want to test won't be tested(but the test will pass), is that what you mean?

Yes, this test is very simple and should pass in an environment where
the block size is equal to the page size.

Thanks,
Yi.






[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux