Re: [PATCH 2/2] ext4: annotate implicit fall throughs

From: Andreas Dilger
Date: Thu Jan 17 2019 - 12:40:01 EST



> On Jan 14, 2019, at 1:39 PM, Mathieu Malaterre <malat@xxxxxxxxxx> wrote:
>
> There is a plan to build the kernel with -Wimplicit-fallthrough and
> these places in the code produced warnings (W=1). Fix them up.
>
> This commit remove the following warnings:
>
> fs/ext4/indirect.c:1182:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
> fs/ext4/indirect.c:1188:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
> fs/ext4/indirect.c:1432:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
> fs/ext4/indirect.c:1440:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
>
> Signed-off-by: Mathieu Malaterre <malat@xxxxxxxxxx>

Reviewed-by: Andreas Dilger <adilger@xxxxxxxxx>

> ---
> fs/ext4/indirect.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/fs/ext4/indirect.c b/fs/ext4/indirect.c
> index bf7fa1507e81..c2225f0d31b5 100644
> --- a/fs/ext4/indirect.c
> +++ b/fs/ext4/indirect.c
> @@ -1183,18 +1183,21 @@ void ext4_ind_truncate(handle_t *handle, struct inode *inode)
> ext4_free_branches(handle, inode, NULL, &nr, &nr+1, 1);
> i_data[EXT4_IND_BLOCK] = 0;
> }
> + /* fall through */
> case EXT4_IND_BLOCK:
> nr = i_data[EXT4_DIND_BLOCK];
> if (nr) {
> ext4_free_branches(handle, inode, NULL, &nr, &nr+1, 2);
> i_data[EXT4_DIND_BLOCK] = 0;
> }
> + /* fall through */
> case EXT4_DIND_BLOCK:
> nr = i_data[EXT4_TIND_BLOCK];
> if (nr) {
> ext4_free_branches(handle, inode, NULL, &nr, &nr+1, 3);
> i_data[EXT4_TIND_BLOCK] = 0;
> }
> + /* fall through */
> case EXT4_TIND_BLOCK:
> ;
> }
> @@ -1433,6 +1436,7 @@ int ext4_ind_remove_space(handle_t *handle, struct inode *inode,
> ext4_free_branches(handle, inode, NULL, &nr, &nr+1, 1);
> i_data[EXT4_IND_BLOCK] = 0;
> }
> + /* fall through */
> case EXT4_IND_BLOCK:
> if (++n >= n2)
> return 0;
> @@ -1441,6 +1445,7 @@ int ext4_ind_remove_space(handle_t *handle, struct inode *inode,
> ext4_free_branches(handle, inode, NULL, &nr, &nr+1, 2);
> i_data[EXT4_DIND_BLOCK] = 0;
> }
> + /* fall through */
> case EXT4_DIND_BLOCK:
> if (++n >= n2)
> return 0;
> @@ -1449,6 +1454,7 @@ int ext4_ind_remove_space(handle_t *handle, struct inode *inode,
> ext4_free_branches(handle, inode, NULL, &nr, &nr+1, 3);
> i_data[EXT4_TIND_BLOCK] = 0;
> }
> + /* fall through */
> case EXT4_TIND_BLOCK:
> ;
> }
> --
> 2.19.2
>


Cheers, Andreas





Attachment: signature.asc
Description: Message signed with OpenPGP