aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--procps/mpstat.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/procps/mpstat.c b/procps/mpstat.c
index 125bb3de7..b0d187ea6 100644
--- a/procps/mpstat.c
+++ b/procps/mpstat.c
@@ -954,16 +954,14 @@ int mpstat_main(int UNUSED_PARAM argc, char **argv)
954 } 954 }
955 955
956 if (opt & OPT_INTS) { 956 if (opt & OPT_INTS) {
957 if (strcmp(opt_irq_fmt, "ALL") == 0) 957 static const char v[] = {
958 G.options |= D_IRQ_SUM + D_IRQ_CPU + D_SOFTIRQS; 958 D_IRQ_CPU, D_IRQ_SUM, D_SOFTIRQS,
959 else if (strcmp(opt_irq_fmt, "CPU") == 0) 959 D_IRQ_SUM + D_IRQ_CPU + D_SOFTIRQS
960 G.options |= D_IRQ_CPU; 960 };
961 else if (strcmp(opt_irq_fmt, "SUM") == 0) 961 i = index_in_strings("CPU\0SUM\0SCPU\0ALL\0", opt_irq_fmt);
962 G.options |= D_IRQ_SUM; 962 if (i == -1)
963 else if (strcmp(opt_irq_fmt, "SCPU") == 0)
964 G.options |= D_SOFTIRQS;
965 else
966 bb_show_usage(); 963 bb_show_usage();
964 G.options |= v[i];
967 } 965 }
968 966
969 if ((opt & OPT_UTIL) /* -u? */ 967 if ((opt & OPT_UTIL) /* -u? */