diff mbox series

[032/141] floppy: Fix fall-through warnings for Clang

Message ID ede7ffddba64f621150f8f5c5f2b8f080b560903.1605896059.git.gustavoars@kernel.org (mailing list archive)
State New, archived
Headers show
Series Fix fall-through warnings for Clang | expand

Commit Message

Gustavo A. R. Silva Nov. 20, 2020, 6:28 p.m. UTC
In preparation to enable -Wimplicit-fallthrough for Clang, fix a warning
by explicitly adding a fallthrough pseudo-keyword in places where the
code is intended to fall through to the next case.

Link: https://github.com/KSPP/linux/issues/115
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
---
 drivers/block/floppy.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Gustavo A. R. Silva April 20, 2021, 8:25 p.m. UTC | #1
Hi all,

Friendly ping: who can take this, please?

Thanks
--
Gustavo

On 11/20/20 12:28, Gustavo A. R. Silva wrote:
> In preparation to enable -Wimplicit-fallthrough for Clang, fix a warning
> by explicitly adding a fallthrough pseudo-keyword in places where the
> code is intended to fall through to the next case.
> 
> Link: https://github.com/KSPP/linux/issues/115
> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
> ---
>  drivers/block/floppy.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
> index 7df79ae6b0a1..21a2a7becba0 100644
> --- a/drivers/block/floppy.c
> +++ b/drivers/block/floppy.c
> @@ -2124,6 +2124,7 @@ static void format_interrupt(void)
>  	switch (interpret_errors()) {
>  	case 1:
>  		cont->error();
> +		fallthrough;
>  	case 2:
>  		break;
>  	case 0:
>
Jens Axboe April 20, 2021, 8:30 p.m. UTC | #2
On 4/20/21 2:25 PM, Gustavo A. R. Silva wrote:
> Hi all,
> 
> Friendly ping: who can take this, please?
> 
> Thanks
> --
> Gustavo
> 
> On 11/20/20 12:28, Gustavo A. R. Silva wrote:
>> In preparation to enable -Wimplicit-fallthrough for Clang, fix a warning
>> by explicitly adding a fallthrough pseudo-keyword in places where the
>> code is intended to fall through to the next case.
>>
>> Link: https://github.com/KSPP/linux/issues/115
>> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
>> ---
>>  drivers/block/floppy.c | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
>> index 7df79ae6b0a1..21a2a7becba0 100644
>> --- a/drivers/block/floppy.c
>> +++ b/drivers/block/floppy.c
>> @@ -2124,6 +2124,7 @@ static void format_interrupt(void)
>>  	switch (interpret_errors()) {
>>  	case 1:
>>  		cont->error();
>> +		fallthrough;
>>  	case 2:
>>  		break;
>>  	case 0:

I wonder about the consistency of the patches. The one I just applied
for libata adds a break, this one annotates fallthrough. But the cases
are really 100% the same. Why aren't the changes consistent? Both are
obviously fine, but for identical cases it seems odd that they differ.

IMHO, adding a break makes more sense. Annotate the fallthrough if the
two cases share work that needs to be done, as then that solution makes
sense.
Denis Efremov April 20, 2021, 8:34 p.m. UTC | #3
Hi,

Sorry, this was missed somehow.

I would rewrite it to something more simple instead of adding fallthrough.

What about?

--- a/drivers/block/floppy.c
+++ b/drivers/block/floppy.c
@@ -2123,12 +2123,14 @@ static void set_floppy(int drive)
 static void format_interrupt(void)
 {
        switch (interpret_errors()) {
+       case 0:
+               cont->done(1);
+               break;
        case 1:
                cont->error();
+               break;
        case 2:
                break;
-       case 0:
-               cont->done(1);
        }
        cont->redo();
 }

On 4/20/21 11:25 PM, Gustavo A. R. Silva wrote:
> Hi all,
> 
> Friendly ping: who can take this, please?
> 
> Thanks
> --
> Gustavo
> 
> On 11/20/20 12:28, Gustavo A. R. Silva wrote:
>> In preparation to enable -Wimplicit-fallthrough for Clang, fix a warning
>> by explicitly adding a fallthrough pseudo-keyword in places where the
>> code is intended to fall through to the next case.
>>
>> Link: https://github.com/KSPP/linux/issues/115
>> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
>> ---
>>  drivers/block/floppy.c | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
>> index 7df79ae6b0a1..21a2a7becba0 100644
>> --- a/drivers/block/floppy.c
>> +++ b/drivers/block/floppy.c
>> @@ -2124,6 +2124,7 @@ static void format_interrupt(void)
>>  	switch (interpret_errors()) {
>>  	case 1:
>>  		cont->error();
>> +		fallthrough;
>>  	case 2:
>>  		break;
>>  	case 0:
>>
Gustavo A. R. Silva April 20, 2021, 8:37 p.m. UTC | #4
On 4/20/21 15:30, Jens Axboe wrote:

>>>
>>> diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
>>> index 7df79ae6b0a1..21a2a7becba0 100644
>>> --- a/drivers/block/floppy.c
>>> +++ b/drivers/block/floppy.c
>>> @@ -2124,6 +2124,7 @@ static void format_interrupt(void)
>>>  	switch (interpret_errors()) {
>>>  	case 1:
>>>  		cont->error();
>>> +		fallthrough;
>>>  	case 2:
>>>  		break;
>>>  	case 0:
> 
> I wonder about the consistency of the patches. The one I just applied
> for libata adds a break, this one annotates fallthrough. But the cases
> are really 100% the same. Why aren't the changes consistent? Both are
> obviously fine, but for identical cases it seems odd that they differ.
> 
> IMHO, adding a break makes more sense. Annotate the fallthrough if the
> two cases share work that needs to be done, as then that solution makes
> sense.
> 

Yeah; I'll resend this with a break, instead.

Thanks for the feedback.
--
Gustavo
diff mbox series

Patch

diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
index 7df79ae6b0a1..21a2a7becba0 100644
--- a/drivers/block/floppy.c
+++ b/drivers/block/floppy.c
@@ -2124,6 +2124,7 @@  static void format_interrupt(void)
 	switch (interpret_errors()) {
 	case 1:
 		cont->error();
+		fallthrough;
 	case 2:
 		break;
 	case 0: