Re: [PATCH] rds: send: mark expected switch fall-through in rds_rm_size

From: Gustavo A. R. Silva
Date: Tue Feb 20 2018 - 13:05:33 EST


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@xxxxxxxxxxxxxx>
---
 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@xxxxxxxxxx>

--
Gustavo