Message ID | 20200706145936.13620-1-marcos@mpdesouza.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | btrfs: ctree: Add do {} while (0) in btrfs_{set|clear}_and_info | expand |
On 6.07.20 г. 17:59 ч., Marcos Paulo de Souza wrote: > From: Marcos Paulo de Souza <mpdesouza@suse.com> > > Without this change it's not possible to use these macros and having an > if-else construction without using braces. > > Signed-off-by: Marcos Paulo de Souza <mpdesouza@suse.com> This change would have been better accompanied with another one showing intended usage. If it's part of a bigger rework then postpone it and send everything altogether. > --- > fs/btrfs/ctree.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h > index a256961c0dbe..cef0489a1523 100644 > --- a/fs/btrfs/ctree.h > +++ b/fs/btrfs/ctree.h > @@ -1278,18 +1278,18 @@ static inline u32 BTRFS_MAX_XATTR_SIZE(const struct btrfs_fs_info *info) > BTRFS_MOUNT_##opt) > > #define btrfs_set_and_info(fs_info, opt, fmt, args...) \ > -{ \ > +do { \ > if (!btrfs_test_opt(fs_info, opt)) \ > btrfs_info(fs_info, fmt, ##args); \ > btrfs_set_opt(fs_info->mount_opt, opt); \ > -} > +} while (0) > > #define btrfs_clear_and_info(fs_info, opt, fmt, args...) \ > -{ \ > +do { \ > if (btrfs_test_opt(fs_info, opt)) \ > btrfs_info(fs_info, fmt, ##args); \ > btrfs_clear_opt(fs_info->mount_opt, opt); \ > -} > +} while (0) > > /* > * Requests for changes that need to be done during transaction commit. >
On Tue, 2020-07-07 at 11:34 +0300, Nikolay Borisov wrote: > > On 6.07.20 г. 17:59 ч., Marcos Paulo de Souza wrote: > > From: Marcos Paulo de Souza <mpdesouza@suse.com> > > > > Without this change it's not possible to use these macros and > having an > > if-else construction without using braces. > > > > Signed-off-by: Marcos Paulo de Souza <mpdesouza@suse.com> > > This change would have been better accompanied with another one > showing > intended usage. If it's part of a bigger rework then postpone it and > send everything altogether. Yes, this is part of my fscontext btrfs port. Ok, I'll send this again again along with all the port patches. Thanks, Marcos > > > --- > > fs/btrfs/ctree.h | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h > > index a256961c0dbe..cef0489a1523 100644 > > --- a/fs/btrfs/ctree.h > > +++ b/fs/btrfs/ctree.h > > @@ -1278,18 +1278,18 @@ static inline u32 > BTRFS_MAX_XATTR_SIZE(const struct btrfs_fs_info *info) > > BTRFS_MOUNT_##opt) > > > > #define btrfs_set_and_info(fs_info, opt, fmt, args...) > \ > > -{ > \ > > +do { > \ > > if (!btrfs_test_opt(fs_info, opt)) > \ > > btrfs_info(fs_info, fmt, ##args); \ > > btrfs_set_opt(fs_info->mount_opt, opt); > \ > > -} > > +} while (0) > > > > #define btrfs_clear_and_info(fs_info, opt, fmt, args...) > \ > > -{ > \ > > +do { > \ > > if (btrfs_test_opt(fs_info, opt)) \ > > btrfs_info(fs_info, fmt, ##args); \ > > btrfs_clear_opt(fs_info->mount_opt, opt); \ > > -} > > +} while (0) > > > > /* > > * Requests for changes that need to be done during transaction > commit. > >
On Tue, Jul 07, 2020 at 11:34:12AM +0300, Nikolay Borisov wrote: > > > On 6.07.20 г. 17:59 ч., Marcos Paulo de Souza wrote: > > From: Marcos Paulo de Souza <mpdesouza@suse.com> > > > > Without this change it's not possible to use these macros and having an > > if-else construction without using braces. > > > > Signed-off-by: Marcos Paulo de Souza <mpdesouza@suse.com> > > This change would have been better accompanied with another one showing > intended usage. If it's part of a bigger rework then postpone it and > send everything altogether. I think the change is good as is, multi-statement macros should always be enclosed in do {} while(0);
Reviewed-by: Anand Jain <anand.jain@oracle.com>
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h index a256961c0dbe..cef0489a1523 100644 --- a/fs/btrfs/ctree.h +++ b/fs/btrfs/ctree.h @@ -1278,18 +1278,18 @@ static inline u32 BTRFS_MAX_XATTR_SIZE(const struct btrfs_fs_info *info) BTRFS_MOUNT_##opt) #define btrfs_set_and_info(fs_info, opt, fmt, args...) \ -{ \ +do { \ if (!btrfs_test_opt(fs_info, opt)) \ btrfs_info(fs_info, fmt, ##args); \ btrfs_set_opt(fs_info->mount_opt, opt); \ -} +} while (0) #define btrfs_clear_and_info(fs_info, opt, fmt, args...) \ -{ \ +do { \ if (btrfs_test_opt(fs_info, opt)) \ btrfs_info(fs_info, fmt, ##args); \ btrfs_clear_opt(fs_info->mount_opt, opt); \ -} +} while (0) /* * Requests for changes that need to be done during transaction commit.