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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@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.

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@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux