jhash: fix annoying gcc fall through warnings
authorJens Axboe <axboe@kernel.dk>
Sun, 5 Nov 2017 15:52:21 +0000 (08:52 -0700)
committerJens Axboe <axboe@kernel.dk>
Sun, 5 Nov 2017 15:52:21 +0000 (08:52 -0700)
Signed-off-by: Jens Axboe <axboe@kernel.dk>
jhash.h

diff --git a/jhash.h b/jhash.h
index 4cebd23a62262e1ee4ad8d594e09411b53fe03ad..a4d3106aac03b94550d04309311563703a9f5e04 100644 (file)
--- a/jhash.h
+++ b/jhash.h
@@ -73,22 +73,21 @@ static inline u32 jhash(const void *key, u32 length, u32 initval)
                k += 12;
        }
 
-       /* last block: affect all 32 bits of (c) */
-       /* all the case statements fall through */
+       /* Last block: affect all 32 bits of (c) */
        switch (length) {
-       case 12: c += (u32)k[11]<<24;
-       case 11: c += (u32)k[10]<<16;
-       case 10: c += (u32)k[9]<<8;
-       case 9 : c += k[8];
-       case 8 : b += (u32)k[7]<<24;
-       case 7 : b += (u32)k[6]<<16;
-       case 6 : b += (u32)k[5]<<8;
-       case 5 : b += k[4];
-       case 4 : a += (u32)k[3]<<24;
-       case 3 : a += (u32)k[2]<<16;
-       case 2 : a += (u32)k[1]<<8;
-       case 1 : a += k[0];
-               __jhash_final(a, b, c);
+       case 12: c += (u32)k[11]<<24;   /* fall through */
+       case 11: c += (u32)k[10]<<16;   /* fall through */
+       case 10: c += (u32)k[9]<<8;     /* fall through */
+       case 9:  c += k[8];             /* fall through */
+       case 8:  b += (u32)k[7]<<24;    /* fall through */
+       case 7:  b += (u32)k[6]<<16;    /* fall through */
+       case 6:  b += (u32)k[5]<<8;     /* fall through */
+       case 5:  b += k[4];             /* fall through */
+       case 4:  a += (u32)k[3]<<24;    /* fall through */
+       case 3:  a += (u32)k[2]<<16;    /* fall through */
+       case 2:  a += (u32)k[1]<<8;     /* fall through */
+       case 1 a += k[0];
+                __jhash_final(a, b, c);
        case 0 :
                break;
        }
@@ -117,10 +116,9 @@ static inline u32 jhash2(u32 *k, u32 length, u32 initval)
        }
 
        /* handle the last 3 u32's */
-       /* all the case statements fall through */ 
        switch (length) {
-       case 3: c += k[2];
-       case 2: b += k[1];
+       case 3: c += k[2];      /* fall through */
+       case 2: b += k[1];      /* fall through */
        case 1: a += k[0];
                __jhash_final(a, b, c);
        case 0:     /* case 0: nothing left to add */