diff mbox

rds: send: mark expected switch fall-through in rds_rm_size

Message ID 20180219181020.GA19154@embeddedgus (mailing list archive)
State Not Applicable
Headers show

Commit Message

Gustavo A. R. Silva Feb. 19, 2018, 6:10 p.m. UTC
In preparation to enabling -Wimplicit-fallthrough, mark switch cases
where we are expecting to fall through.

Addresses-Coverity-ID: 1465362 ("Missing break in switch")
Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
---
 net/rds/send.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Sowmini Varadhan Feb. 19, 2018, 8:06 p.m. UTC | #1
On (02/19/18 12:10), Gustavo A. R. Silva wrote:
> 
> In preparation to enabling -Wimplicit-fallthrough, mark switch cases
> where we are expecting to fall through.

Acked-by:  Sowmini Varadhan <sowmini.varadhan@oracle.com>

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Santosh Shilimkar Feb. 20, 2018, 5:54 p.m. UTC | #2
Hi,

2/19/2018 10:10 AM, Gustavo A. R. Silva wrote:
> In preparation to enabling -Wimplicit-fallthrough, mark switch cases
> where we are expecting to fall through.
> 
> Addresses-Coverity-ID: 1465362 ("Missing break in switch")
> Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
> ---
>   net/rds/send.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/net/rds/send.c b/net/rds/send.c
> index 028ab59..79d158b 100644
> --- a/net/rds/send.c
> +++ b/net/rds/send.c
> @@ -902,6 +902,8 @@ static int rds_rm_size(struct msghdr *msg, int num_sgs)
>   
>   		case RDS_CMSG_ZCOPY_COOKIE:
>   			zcopy_cookie = true;
> +			/* fall through */
> +
>   		case RDS_CMSG_RDMA_DEST:
>   		case RDS_CMSG_RDMA_MAP:
>   			cmsg_groups |= 2;
> 
So coverity greps for commet as "fall through" for
-Wimplicit-fallthrough build ?

Adding that comments itself if fine but was curious
about it if some one makes a spell error in this
comment what happens ;-)

For patch itself,
Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller Feb. 20, 2018, 6:01 p.m. UTC | #3
From: Santosh Shilimkar <santosh.shilimkar@oracle.com>
Date: Tue, 20 Feb 2018 09:54:09 -0800

> So coverity greps for commet as "fall through" for
> -Wimplicit-fallthrough build ?

From what I understand, 'gcc' does in the latest versions.  Coverity
might as well, I don't know.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Gustavo A. R. Silva Feb. 20, 2018, 6:05 p.m. UTC | #4
Hi Santosh,

On 02/20/2018 11:54 AM, Santosh Shilimkar wrote:
> Hi,
> 
> 2/19/2018 10:10 AM, Gustavo A. R. Silva wrote:
>> In preparation to enabling -Wimplicit-fallthrough, mark switch cases
>> where we are expecting to fall through.
>>
>> Addresses-Coverity-ID: 1465362 ("Missing break in switch")
>> Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
>> ---
>>   net/rds/send.c | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/net/rds/send.c b/net/rds/send.c
>> index 028ab59..79d158b 100644
>> --- a/net/rds/send.c
>> +++ b/net/rds/send.c
>> @@ -902,6 +902,8 @@ static int rds_rm_size(struct msghdr *msg, int 
>> num_sgs)
>>           case RDS_CMSG_ZCOPY_COOKIE:
>>               zcopy_cookie = true;
>> +            /* fall through */
>> +
>>           case RDS_CMSG_RDMA_DEST:
>>           case RDS_CMSG_RDMA_MAP:
>>               cmsg_groups |= 2;
>>
> So coverity greps for commet as "fall through" for
> -Wimplicit-fallthrough build ?
> 

No. Basically, Coverity only reports cases in which a break, return or 
continue statement is missing.

Now, if the statements I mention above are missing and if you add the 
following line to your Makefile:

KBUILD_CFLAGS  += $(call cc-option,-Wimplicit-fallthrough)

You will get a warning if a fall-through comment is missing.

> Adding that comments itself if fine but was curious
> about it if some one makes a spell error in this
> comment what happens ;-)
> 

In this case, Coverity would still report the same "Missing break in 
switch" error, but you'll get a GCC warning.

> For patch itself,
> Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>

--
Gustavo
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Gustavo A. R. Silva Feb. 20, 2018, 6:09 p.m. UTC | #5
On 02/20/2018 12:01 PM, David Miller wrote:
> From: Santosh Shilimkar <santosh.shilimkar@oracle.com>
> Date: Tue, 20 Feb 2018 09:54:09 -0800
> 
>> So coverity greps for commet as "fall through" for
>> -Wimplicit-fallthrough build ?
> 
>  From what I understand, 'gcc' does in the latest versions.  Coverity
> might as well, I don't know.
> 

Yeah, the one that reports those warnings is GCC.

Coverity only knows about missing break, return and continue.

--
Gustavo
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Santosh Shilimkar Feb. 20, 2018, 6:40 p.m. UTC | #6
On 2/20/2018 10:01 AM, David Miller wrote:
> From: Santosh Shilimkar <santosh.shilimkar@oracle.com>
> Date: Tue, 20 Feb 2018 09:54:09 -0800
> 
>> So coverity greps for commet as "fall through" for
>> -Wimplicit-fallthrough build ?
> 
>  From what I understand, 'gcc' does in the latest versions.  Coverity
> might as well, I don't know.
> 
Good to know about 'gcc' adding such option. Thanks !!
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Santosh Shilimkar Feb. 20, 2018, 6:42 p.m. UTC | #7
On 2/20/2018 10:05 AM, Gustavo A. R. Silva wrote:
> Hi Santosh,
> 
> On 02/20/2018 11:54 AM, Santosh Shilimkar wrote:
>> Hi,
>>
>> 2/19/2018 10:10 AM, Gustavo A. R. Silva wrote:
>>> In preparation to enabling -Wimplicit-fallthrough, mark switch cases
>>> where we are expecting to fall through.
>>>
>>> Addresses-Coverity-ID: 1465362 ("Missing break in switch")
>>> Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
>>> ---
>>>   net/rds/send.c | 2 ++
>>>   1 file changed, 2 insertions(+)
>>>
>>> diff --git a/net/rds/send.c b/net/rds/send.c
>>> index 028ab59..79d158b 100644
>>> --- a/net/rds/send.c
>>> +++ b/net/rds/send.c
>>> @@ -902,6 +902,8 @@ static int rds_rm_size(struct msghdr *msg, int 
>>> num_sgs)
>>>           case RDS_CMSG_ZCOPY_COOKIE:
>>>               zcopy_cookie = true;
>>> +            /* fall through */
>>> +
>>>           case RDS_CMSG_RDMA_DEST:
>>>           case RDS_CMSG_RDMA_MAP:
>>>               cmsg_groups |= 2;
>>>
>> So coverity greps for commet as "fall through" for
>> -Wimplicit-fallthrough build ?
>>
> 
> No. Basically, Coverity only reports cases in which a break, return or 
> continue statement is missing.
> 
> Now, if the statements I mention above are missing and if you add the 
> following line to your Makefile:
> 
> KBUILD_CFLAGS  += $(call cc-option,-Wimplicit-fallthrough)
>
> You will get a warning if a fall-through comment is missing.
>
That make sense.

>> Adding that comments itself if fine but was curious
>> about it if some one makes a spell error in this
>> comment what happens ;-)
>>
> 
> In this case, Coverity would still report the same "Missing break in 
> switch" error, but you'll get a GCC warning.
> 
Got it. Thanks !!
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller Feb. 21, 2018, 7:18 p.m. UTC | #8
From: "Gustavo A. R. Silva" <gustavo@embeddedor.com>
Date: Mon, 19 Feb 2018 12:10:20 -0600

> In preparation to enabling -Wimplicit-fallthrough, mark switch cases
> where we are expecting to fall through.
> 
> Addresses-Coverity-ID: 1465362 ("Missing break in switch")
> Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>

Applied.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/rds/send.c b/net/rds/send.c
index 028ab59..79d158b 100644
--- a/net/rds/send.c
+++ b/net/rds/send.c
@@ -902,6 +902,8 @@  static int rds_rm_size(struct msghdr *msg, int num_sgs)
 
 		case RDS_CMSG_ZCOPY_COOKIE:
 			zcopy_cookie = true;
+			/* fall through */
+
 		case RDS_CMSG_RDMA_DEST:
 		case RDS_CMSG_RDMA_MAP:
 			cmsg_groups |= 2;