All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Sterba <dsterba@suse.cz>
To: Josef Bacik <josef@toxicpanda.com>
Cc: linux-btrfs@vger.kernel.org, kernel-team@fb.com
Subject: Re: [PATCH 06/15] btrfs: move static_assert() for btrfs_super_block into fs.c
Date: Mon, 19 Sep 2022 22:54:11 +0200	[thread overview]
Message-ID: <20220919205411.GU32411@twin.jikos.cz> (raw)
In-Reply-To: <6b462dc4d7ceffe2ba9141f46bf28350be7c7f4a.1663196541.git.josef@toxicpanda.com>

On Wed, Sep 14, 2022 at 07:04:42PM -0400, Josef Bacik wrote:
> We shouldn't have static_assert()'s in header files in general,

Why? Since we have the _Static_assert support in all compilers we can do
the header compile-time checks.

> but
> especially since btrfs_super_block isn't defined in ctree.h.
> 
> Signed-off-by: Josef Bacik <josef@toxicpanda.com>
> ---
>  fs/btrfs/ctree.h | 1 -
>  fs/btrfs/fs.c    | 2 ++
>  2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
> index a790c58b4c73..3cb4e0aca058 100644
> --- a/fs/btrfs/ctree.h
> +++ b/fs/btrfs/ctree.h
> @@ -56,7 +56,6 @@ struct btrfs_ioctl_encoded_io_args;
>  
>  #define BTRFS_SUPER_INFO_OFFSET			SZ_64K
>  #define BTRFS_SUPER_INFO_SIZE			4096
> -static_assert(sizeof(struct btrfs_super_block) == BTRFS_SUPER_INFO_SIZE);
>  
> +
> +static_assert(sizeof(struct btrfs_super_block) == BTRFS_SUPER_INFO_SIZE);

This can be dropped as the same assert is right after the super block
definition and this is IMO the intended usage pattern. This catches any
accidental changes to the structure.

  parent reply	other threads:[~2022-09-19 20:59 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-14 23:04 [PATCH 00/15] btrfs: strip out btrfs_fs_info dependencies Josef Bacik
2022-09-14 23:04 ` [PATCH 01/15] btrfs: move btrfs_caching_type to block-group.h Josef Bacik
2022-09-15  6:09   ` Anand Jain
2022-09-15 14:34   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 02/15] btrfs: move btrfs_full_stripe_locks_tree into block-group.h Josef Bacik
2022-09-15  6:10   ` Anand Jain
2022-09-15 14:38   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 03/15] btrfs: move btrfs_init_async_reclaim_work prototype to space-info.h Josef Bacik
2022-09-15  6:11   ` Anand Jain
2022-09-15 14:42   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 04/15] btrfs: move btrfs_pinned_by_swapfile prototype into volumes.h Josef Bacik
2022-09-15 10:37   ` Anand Jain
2022-09-15 14:43   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 05/15] btrfs: remove temporary btrfs_map_token declaration in ctree.h Josef Bacik
2022-09-15 10:38   ` Anand Jain
2022-09-15 14:44   ` Johannes Thumshirn
2022-09-20 12:21   ` David Sterba
2022-09-14 23:04 ` [PATCH 06/15] btrfs: move static_assert() for btrfs_super_block into fs.c Josef Bacik
2022-09-15 10:42   ` Anand Jain
2022-09-15 14:45   ` Johannes Thumshirn
2022-09-19 20:54   ` David Sterba [this message]
2022-09-14 23:04 ` [PATCH 07/15] btrfs: move btrfs_swapfile_pin into volumes.h Josef Bacik
2022-09-15 10:44   ` Anand Jain
2022-09-19 21:22   ` David Sterba
2022-09-14 23:04 ` [PATCH 08/15] btrfs: move fs_info struct declarations to the top of ctree.h Josef Bacik
2022-09-15 10:45   ` Anand Jain
2022-09-15 14:47   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 09/15] btrfs: move btrfs_csum_ptr to inode.c Josef Bacik
2022-09-15 10:47   ` Anand Jain
2022-09-15 14:47   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 10/15] btrfs: move the fs_info related helpers closer to fs_info in ctree.h Josef Bacik
2022-09-15 11:28   ` Anand Jain
2022-09-15 14:50   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 11/15] btrfs: move btrfs_ordered_sum_size into file-item.c Josef Bacik
2022-09-15 11:29   ` Anand Jain
2022-09-15 14:50   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 12/15] btrfs: delete btrfs_inode_sectorsize helper Josef Bacik
2022-09-15 11:39   ` Anand Jain
2022-09-15 14:51   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 13/15] btrfs: delete btrfs_insert_inode_hash helper Josef Bacik
2022-09-15 12:43   ` Anand Jain
2022-09-15 14:52   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 14/15] btrfs: use a runtime flag to indicate an inode is a free space inode Josef Bacik
2022-09-15 13:01   ` Anand Jain
2022-09-15 14:53   ` Johannes Thumshirn
2022-09-14 23:04 ` [PATCH 15/15] btrfs: add struct declarations in dev-replace.h Josef Bacik
2022-09-15 13:06   ` Anand Jain
2022-09-15 14:54   ` Johannes Thumshirn
2022-09-20 11:44 ` [PATCH 00/15] btrfs: strip out btrfs_fs_info dependencies David Sterba

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=20220919205411.GU32411@twin.jikos.cz \
    --to=dsterba@suse.cz \
    --cc=josef@toxicpanda.com \
    --cc=kernel-team@fb.com \
    --cc=linux-btrfs@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.