Commit 2d291e6c authored by Gustavo A. R. Silva's avatar Gustavo A. R. Silva Committed by Paul Burton

MIPS: OProfile: Mark expected switch fall-throughs

Mark switch cases where we are expecting to fall through.

This patch fixes the following warning (Building: mips):

arch/mips/oprofile/op_model_mipsxx.c: In function ‘mipsxx_cpu_stop’:
arch/mips/oprofile/op_model_mipsxx.c:217:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfctrl3(0);
   ^~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:218:2: note: here
  case 3:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c:219:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfctrl2(0);
   ^~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:220:2: note: here
  case 2:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c:221:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfctrl1(0);
   ^~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:222:2: note: here
  case 1:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c: In function ‘mipsxx_cpu_start’:
arch/mips/oprofile/op_model_mipsxx.c:197:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfctrl3(WHAT | reg.control[3]);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:198:2: note: here
  case 3:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c:199:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfctrl2(WHAT | reg.control[2]);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:200:2: note: here
  case 2:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c:201:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfctrl1(WHAT | reg.control[1]);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:202:2: note: here
  case 1:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c: In function ‘reset_counters’:
arch/mips/oprofile/op_model_mipsxx.c:299:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfcntr3(0);
   ^~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:300:2: note: here
  case 3:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c:302:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfcntr2(0);
   ^~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:303:2: note: here
  case 2:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c:305:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfcntr1(0);
   ^~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:306:2: note: here
  case 1:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c: In function ‘mipsxx_perfcount_handler’:
arch/mips/oprofile/op_model_mipsxx.c:242:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
   if ((control & MIPS_PERFCTRL_IE) &&   \
      ^
arch/mips/oprofile/op_model_mipsxx.c:248:2: note: in expansion of macro ‘HANDLE_COUNTER’
  HANDLE_COUNTER(3)
  ^~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:239:2: note: here
  case n + 1:       \
  ^
arch/mips/oprofile/op_model_mipsxx.c:249:2: note: in expansion of macro ‘HANDLE_COUNTER’
  HANDLE_COUNTER(2)
  ^~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:242:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
   if ((control & MIPS_PERFCTRL_IE) &&   \
      ^
arch/mips/oprofile/op_model_mipsxx.c:249:2: note: in expansion of macro ‘HANDLE_COUNTER’
  HANDLE_COUNTER(2)
  ^~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:239:2: note: here
  case n + 1:       \
  ^
arch/mips/oprofile/op_model_mipsxx.c:250:2: note: in expansion of macro ‘HANDLE_COUNTER’
  HANDLE_COUNTER(1)
  ^~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:242:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
   if ((control & MIPS_PERFCTRL_IE) &&   \
      ^
arch/mips/oprofile/op_model_mipsxx.c:250:2: note: in expansion of macro ‘HANDLE_COUNTER’
  HANDLE_COUNTER(1)
  ^~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:239:2: note: here
  case n + 1:       \
  ^
arch/mips/oprofile/op_model_mipsxx.c:251:2: note: in expansion of macro ‘HANDLE_COUNTER’
  HANDLE_COUNTER(0)
  ^~~~~~~~~~~~~~
  CC      usr/include/linux/pmu.h.s
arch/mips/oprofile/op_model_mipsxx.c: In function ‘mipsxx_cpu_setup’:
arch/mips/oprofile/op_model_mipsxx.c:174:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfcntr3(reg.counter[3]);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:175:2: note: here
  case 3:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c:177:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfcntr2(reg.counter[2]);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:178:2: note: here
  case 2:
  ^~~~
arch/mips/oprofile/op_model_mipsxx.c:180:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
   w_c0_perfcntr1(reg.counter[1]);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/mips/oprofile/op_model_mipsxx.c:181:2: note: here
  case 1:
  ^~~~
Signed-off-by: default avatarGustavo A. R. Silva <gustavo@embeddedor.com>
Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
Cc: Robert Richter <rric@kernel.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: James Hogan <jhogan@kernel.org>
Cc: oprofile-list@lists.sf.net
Cc: linux-mips@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: Kees Cook <keescook@chromium.org>
parent 2a15d648
...@@ -172,12 +172,15 @@ static void mipsxx_cpu_setup(void *args) ...@@ -172,12 +172,15 @@ static void mipsxx_cpu_setup(void *args)
case 4: case 4:
w_c0_perfctrl3(0); w_c0_perfctrl3(0);
w_c0_perfcntr3(reg.counter[3]); w_c0_perfcntr3(reg.counter[3]);
/* fall through */
case 3: case 3:
w_c0_perfctrl2(0); w_c0_perfctrl2(0);
w_c0_perfcntr2(reg.counter[2]); w_c0_perfcntr2(reg.counter[2]);
/* fall through */
case 2: case 2:
w_c0_perfctrl1(0); w_c0_perfctrl1(0);
w_c0_perfcntr1(reg.counter[1]); w_c0_perfcntr1(reg.counter[1]);
/* fall through */
case 1: case 1:
w_c0_perfctrl0(0); w_c0_perfctrl0(0);
w_c0_perfcntr0(reg.counter[0]); w_c0_perfcntr0(reg.counter[0]);
...@@ -195,10 +198,13 @@ static void mipsxx_cpu_start(void *args) ...@@ -195,10 +198,13 @@ static void mipsxx_cpu_start(void *args)
switch (counters) { switch (counters) {
case 4: case 4:
w_c0_perfctrl3(WHAT | reg.control[3]); w_c0_perfctrl3(WHAT | reg.control[3]);
/* fall through */
case 3: case 3:
w_c0_perfctrl2(WHAT | reg.control[2]); w_c0_perfctrl2(WHAT | reg.control[2]);
/* fall through */
case 2: case 2:
w_c0_perfctrl1(WHAT | reg.control[1]); w_c0_perfctrl1(WHAT | reg.control[1]);
/* fall through */
case 1: case 1:
w_c0_perfctrl0(WHAT | reg.control[0]); w_c0_perfctrl0(WHAT | reg.control[0]);
} }
...@@ -215,10 +221,13 @@ static void mipsxx_cpu_stop(void *args) ...@@ -215,10 +221,13 @@ static void mipsxx_cpu_stop(void *args)
switch (counters) { switch (counters) {
case 4: case 4:
w_c0_perfctrl3(0); w_c0_perfctrl3(0);
/* fall through */
case 3: case 3:
w_c0_perfctrl2(0); w_c0_perfctrl2(0);
/* fall through */
case 2: case 2:
w_c0_perfctrl1(0); w_c0_perfctrl1(0);
/* fall through */
case 1: case 1:
w_c0_perfctrl0(0); w_c0_perfctrl0(0);
} }
...@@ -236,6 +245,7 @@ static int mipsxx_perfcount_handler(void) ...@@ -236,6 +245,7 @@ static int mipsxx_perfcount_handler(void)
switch (counters) { switch (counters) {
#define HANDLE_COUNTER(n) \ #define HANDLE_COUNTER(n) \
/* fall through */ \
case n + 1: \ case n + 1: \
control = r_c0_perfctrl ## n(); \ control = r_c0_perfctrl ## n(); \
counter = r_c0_perfcntr ## n(); \ counter = r_c0_perfcntr ## n(); \
...@@ -297,12 +307,15 @@ static void reset_counters(void *arg) ...@@ -297,12 +307,15 @@ static void reset_counters(void *arg)
case 4: case 4:
w_c0_perfctrl3(0); w_c0_perfctrl3(0);
w_c0_perfcntr3(0); w_c0_perfcntr3(0);
/* fall through */
case 3: case 3:
w_c0_perfctrl2(0); w_c0_perfctrl2(0);
w_c0_perfcntr2(0); w_c0_perfcntr2(0);
/* fall through */
case 2: case 2:
w_c0_perfctrl1(0); w_c0_perfctrl1(0);
w_c0_perfcntr1(0); w_c0_perfcntr1(0);
/* fall through */
case 1: case 1:
w_c0_perfctrl0(0); w_c0_perfctrl0(0);
w_c0_perfcntr0(0); w_c0_perfcntr0(0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment