From: Zorro Lang <zlang@redhat.com>
To: "Darrick J. Wong" <djwong@kernel.org>
Cc: linux-xfs@vger.kernel.org, fstests@vger.kernel.org
Subject: Re: [PATCH 1/1] xfs/122: fix EFI/EFD log format structure size after flex array conversion
Date: Thu, 22 Dec 2022 15:19:00 +0800 [thread overview]
Message-ID: <20221222071900.dngksnsq374c5cdj@zlang-mailbox> (raw)
In-Reply-To: <167158210207.235360.12388823078640206103.stgit@magnolia>
On Tue, Dec 20, 2022 at 04:21:42PM -0800, Darrick J. Wong wrote:
> From: Darrick J. Wong <djwong@kernel.org>
>
> Adjust this test since made EFI/EFD log item format structs proper flex
> arrays instead of array[1].
>
> This adjustment was made to the kernel source tree as part of a project
> to make the use of flex arrays more consistent throughout the kernel.
> Converting array[1] and array[0] to array[] also avoids bugs in various
> compiler ports that mishandle the array size computation. Prior to the
> introduction of xfs_ondisk.h, these miscomputations resulted in kernels
> that would silently write out filesystem structures that would then not
> be recognized by more mainstream systems (e.g. x86).
>
> OFC nearly all those reports about buggy compilers are for tiny
> architectures that XFS doesn't work well on anyways, so in practice it
> hasn't created any user problems (AFAIK).
>
> Signed-off-by: Darrick J. Wong <djwong@kernel.org>
> ---
This version looks good to me, thanks for all these detailed information!
Reviewed-by: Zorro Lang <zlang@redhat.com>
> common/rc | 15 +++++++++++++++
> tests/xfs/122 | 5 +++++
> tests/xfs/122.out | 8 ++++----
> 3 files changed, 24 insertions(+), 4 deletions(-)
>
>
> diff --git a/common/rc b/common/rc
> index 8060c03b7d..67bd74dc89 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -1502,6 +1502,21 @@ _fixed_by_kernel_commit()
> _fixed_by_git_commit kernel $*
> }
>
I'd like to give some comments to the new _wants_* helpers when I merge
it (don't need send a new version again: ), to help others know the
different usage of _wants_* and _fixed_by_*. How about below comment:
# Compare with _fixed_by_* helpers, this helper is used for un-regression
# test case, e.g. xfs/122. Or a case would like to mention a git commit
# which is not a bug fix (maybe a default behavior/format change). Then
# use this helpers.
> +_wants_git_commit()
> +{
> + local pkg=$1
> + shift
> +
> + echo "This test wants $pkg fix:" >> $seqres.hints
> + echo " $*" >> $seqres.hints
> + echo >> $seqres.hints
> +}
> +
# Refer to _wants_git_commit
Feel free to make it better :)
Thanks,
Zorro
> +_wants_kernel_commit()
> +{
> + _wants_git_commit kernel $*
> +}
> +
> _check_if_dev_already_mounted()
> {
> local dev=$1
> diff --git a/tests/xfs/122 b/tests/xfs/122
> index 91083d6036..e616f1987d 100755
> --- a/tests/xfs/122
> +++ b/tests/xfs/122
> @@ -17,6 +17,11 @@ _begin_fstest other auto quick clone realtime
> _supported_fs xfs
> _require_command "$INDENT_PROG" indent
>
> +# Starting in Linux 6.1, the EFI log formats were adjusted away from using
> +# single-element arrays as flex arrays.
> +_wants_kernel_commit 03a7485cd701 \
> + "xfs: fix memcpy fortify errors in EFI log format copying"
> +
> # filter out known changes to xfs type sizes
> _type_size_filter()
> {
> diff --git a/tests/xfs/122.out b/tests/xfs/122.out
> index a56cbee84f..95e53c5081 100644
> --- a/tests/xfs/122.out
> +++ b/tests/xfs/122.out
> @@ -161,10 +161,10 @@ sizeof(xfs_disk_dquot_t) = 104
> sizeof(xfs_dq_logformat_t) = 24
> sizeof(xfs_dqblk_t) = 136
> sizeof(xfs_dsb_t) = 264
> -sizeof(xfs_efd_log_format_32_t) = 28
> -sizeof(xfs_efd_log_format_64_t) = 32
> -sizeof(xfs_efi_log_format_32_t) = 28
> -sizeof(xfs_efi_log_format_64_t) = 32
> +sizeof(xfs_efd_log_format_32_t) = 16
> +sizeof(xfs_efd_log_format_64_t) = 16
> +sizeof(xfs_efi_log_format_32_t) = 16
> +sizeof(xfs_efi_log_format_64_t) = 16
> sizeof(xfs_error_injection_t) = 8
> sizeof(xfs_exntfmt_t) = 4
> sizeof(xfs_exntst_t) = 4
>
next prev parent reply other threads:[~2022-12-22 7:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-21 0:21 [PATCHSET 0/1] fstests: fix tests for kernel 6.1 Darrick J. Wong
2022-12-21 0:21 ` [PATCH 1/1] xfs/122: fix EFI/EFD log format structure size after flex array conversion Darrick J. Wong
2022-12-22 7:19 ` Zorro Lang [this message]
2022-12-22 18:38 ` Darrick J. Wong
-- strict thread matches above, loose matches on Subject: below --
2022-12-13 19:45 [PATCHSET 0/1] fstests: fix tests for kernel 6.1 Darrick J. Wong
2022-12-13 19:45 ` [PATCH 1/1] xfs/122: fix EFI/EFD log format structure size after flex array conversion Darrick J. Wong
2022-12-14 18:40 ` Zorro Lang
2022-12-17 8:14 ` Darrick J. Wong
2022-12-17 10:00 ` Zorro Lang
2022-12-19 17:14 ` Darrick J. Wong
2022-12-19 19:01 ` Zorro Lang
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=20221222071900.dngksnsq374c5cdj@zlang-mailbox \
--to=zlang@redhat.com \
--cc=djwong@kernel.org \
--cc=fstests@vger.kernel.org \
--cc=linux-xfs@vger.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.