lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 7 Jul 2022 23:00:52 +0800
From:   Zorro Lang <zlang@...hat.com>
To:     Sun Ke <sunke32@...wei.com>
Cc:     fstests@...r.kernel.org, linux-ext4@...r.kernel.org
Subject: Re: [PATCH 1/2] ext4/057: resize fs after resize_inode without e2fsck

On Thu, Jul 07, 2022 at 09:59:16PM +0800, Sun Ke wrote:
> Forget to run requested e2fsck after resize_inode, then resize fs, it
> will trigger off null pointer.
> 
> Regression test for commit b55c3cd102a6 ext4: add reserved GDT blocks
> check
> 
> Signed-off-by: Sun Ke <sunke32@...wei.com>
> ---

Don't use a fixed case number for a new case. It might not be "057" when
I merge it.

>  tests/ext4/057     | 41 +++++++++++++++++++++++++++++++++++++++++
>  tests/ext4/057.out |  2 ++
>  2 files changed, 43 insertions(+)
>  create mode 100755 tests/ext4/057
>  create mode 100644 tests/ext4/057.out
> 
> diff --git a/tests/ext4/057 b/tests/ext4/057
> new file mode 100755
> index 00000000..dacc14be
> --- /dev/null
> +++ b/tests/ext4/057
> @@ -0,0 +1,41 @@
> +#! /bin/bash
> +# SPDX-License-Identifier: GPL-2.0
> +# Copyright (c) 2022 HUAWEI.  All Rights Reserved.
> +#
> +# FS QA Test 057
> +#
> +# Forget to run requested e2fsck after resize_inode, then resize fs,
> +# it will trigger off null pointer.
> +#
> +# Regression test for commit
> +# b55c3cd102a6 ext4: add reserved GDT blocks check
> +#
> +. ./common/preamble
> +_begin_fstest auto

This's a "resize" related test, and I think it'll be "quick" enough if you
use smaller fs size to test.

> +
> +# real QA test starts here
> +
> +# Modify as appropriate.
> +_supported_fs ext4
> +_require_scratch

_fixed_by_kernel_commit() is recommended, if this's a known regression test.

> +_require_command "$TUNE2FS_PROG" tune2fs
> +_require_command "$RESIZE2FS_PROG" resize2
                                             ^^
resize2fs ?

> +
> +
> +# set fs size 3G
> +dev_size=$((3 * 1024 * 1024 * 1024))
> +_scratch_mkfs_sized $dev_size >/dev/null 2>&1
> +
> +# forget to run requested e2fsck after resize_inode
> +$TUNE2FS_PROG -O ^resize_inode $SCRATCH_DEV >/dev/null 2>&1
> +
> +_scratch_mount
> +
> +# resize fs from 3G to 8G

This comment is useless. You can describe what's expected, and what
kind of bug might be trigger at here.

> +$RESIZE2FS_PROG $SCRATCH_DEV 8G >/dev/null 2>&1

Better to print to $seqres.full, to help debug if need.

Better use _require_scratch_size at beginning, to make sure you have enough
space. BTW, do you really need such big size to trigger this bug? Better to
figure out if you can use smaller size (e.g. 512m to 1g) to help this
case always can be run, even with small test devices.

> +
> +echo "Silence is golden"
> +
> +# success, all done
> +status=0
> +exit
> diff --git a/tests/ext4/057.out b/tests/ext4/057.out
> new file mode 100644
> index 00000000..185023c7
> --- /dev/null
> +++ b/tests/ext4/057.out
> @@ -0,0 +1,2 @@
> +QA output created by 057
> +Silence is golden
> -- 
> 2.13.6
> 

Powered by blists - more mailing lists