* [PATCH v3] perf tools: Add missing case value
@ 2019-03-20 3:20 Solomon Tan
2019-03-20 16:03 ` Mathieu Poirier
0 siblings, 1 reply; 2+ messages in thread
From: Solomon Tan @ 2019-03-20 3:20 UTC (permalink / raw)
To: Mathieu Poirier
Cc: peterz, mingo, acme, linux-arm-kernel, linux-kernel,
suzuki.poulose, alexander.shishkin, jolsa, namhyung,
robert.walker, acme
[-- Attachment #1.1: Type: text/plain, Size: 2172 bytes --]
The following error was thrown when compiling `tools/perf` using OpenCSD
v0.11.1. This patch fixes said error.
```
CC util/intel-pt-decoder/intel-pt-log.o
CC util/cs-etm-decoder/cs-etm-decoder.o
util/cs-etm-decoder/cs-etm-decoder.c: In function
‘cs_etm_decoder__buffer_range’:
util/cs-etm-decoder/cs-etm-decoder.c:370:2: error: enumeration value ‘OCSD_INSTR_WFI_WFE’ not handled in switch [-Werror=switch-enum]
switch (elem->last_i_type) {
^~~~~~
CC util/intel-pt-decoder/intel-pt-decoder.o
cc1: all warnings being treated as errors
```
Because `OCSD_INSTR_WFI_WFE` case was only added after v0.11.0, the minimum
required OpenCSD library version for this patch is no longer v0.10.0.
Signed-off-by: Solomon Tan <solomonbstoner@protonmail.ch>
---
tools/build/feature/test-libopencsd.c | 4 ++--
tools/perf/util/cs-etm-decoder/cs-etm-decoder.c | 1 +
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/tools/build/feature/test-libopencsd.c b/tools/build/feature/test-libopencsd.c
index d68eb4fb40cc..2b0e02c38870 100644
--- a/tools/build/feature/test-libopencsd.c
+++ b/tools/build/feature/test-libopencsd.c
@@ -4,9 +4,9 @@
/*
* Check OpenCSD library version is sufficient to provide required features
*/
-#define OCSD_MIN_VER ((0 << 16) | (10 << 8) | (0))
+#define OCSD_MIN_VER ((0 << 16) | (11 << 8) | (0))
#if !defined(OCSD_VER_NUM) || (OCSD_VER_NUM < OCSD_MIN_VER)
-#error "OpenCSD >= 0.10.0 is required"
+#error "OpenCSD >= 0.11.0 is required"
#endif
int main(void)
diff --git a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
index 8c155575c6c5..2a8bf6b45a30 100644
--- a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
+++ b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
@@ -374,6 +374,7 @@ cs_etm_decoder__buffer_range(struct cs_etm_decoder *decoder,
break;
case OCSD_INSTR_ISB:
case OCSD_INSTR_DSB_DMB:
+ case OCSD_INSTR_WFI_WFE:
case OCSD_INSTR_OTHER:
default:
packet->last_instr_taken_branch = false;
--
2.19.1
[-- Attachment #1.2: publickey - solomonbstoner@protonmail.ch - 0xA77658B9.asc --]
[-- Type: application/pgp-keys, Size: 1836 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 509 bytes --]
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v3] perf tools: Add missing case value
2019-03-20 3:20 [PATCH v3] perf tools: Add missing case value Solomon Tan
@ 2019-03-20 16:03 ` Mathieu Poirier
0 siblings, 0 replies; 2+ messages in thread
From: Mathieu Poirier @ 2019-03-20 16:03 UTC (permalink / raw)
To: Solomon Tan
Cc: peterz, mingo, acme, linux-arm-kernel, linux-kernel,
suzuki.poulose, alexander.shishkin, jolsa, namhyung,
robert.walker, acme
On Tue, 19 Mar 2019 at 21:20, Solomon Tan <solomonbstoner@protonmail.ch> wrote:
>
> The following error was thrown when compiling `tools/perf` using OpenCSD
> v0.11.1. This patch fixes said error.
>
> ```
> CC util/intel-pt-decoder/intel-pt-log.o
> CC util/cs-etm-decoder/cs-etm-decoder.o
> util/cs-etm-decoder/cs-etm-decoder.c: In function
> ‘cs_etm_decoder__buffer_range’:
> util/cs-etm-decoder/cs-etm-decoder.c:370:2: error: enumeration value ‘OCSD_INSTR_WFI_WFE’ not handled in switch [-Werror=switch-enum]
> switch (elem->last_i_type) {
> ^~~~~~
> CC util/intel-pt-decoder/intel-pt-decoder.o
> cc1: all warnings being treated as errors
> ```
>
> Because `OCSD_INSTR_WFI_WFE` case was only added after v0.11.0, the minimum
> required OpenCSD library version for this patch is no longer v0.10.0.
>
> Signed-off-by: Solomon Tan <solomonbstoner@protonmail.ch>
> ---
> tools/build/feature/test-libopencsd.c | 4 ++--
> tools/perf/util/cs-etm-decoder/cs-etm-decoder.c | 1 +
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/tools/build/feature/test-libopencsd.c b/tools/build/feature/test-libopencsd.c
> index d68eb4fb40cc..2b0e02c38870 100644
> --- a/tools/build/feature/test-libopencsd.c
> +++ b/tools/build/feature/test-libopencsd.c
> @@ -4,9 +4,9 @@
> /*
> * Check OpenCSD library version is sufficient to provide required features
> */
> -#define OCSD_MIN_VER ((0 << 16) | (10 << 8) | (0))
> +#define OCSD_MIN_VER ((0 << 16) | (11 << 8) | (0))
> #if !defined(OCSD_VER_NUM) || (OCSD_VER_NUM < OCSD_MIN_VER)
> -#error "OpenCSD >= 0.10.0 is required"
> +#error "OpenCSD >= 0.11.0 is required"
> #endif
>
>
> int main(void)
> diff --git a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
> index 8c155575c6c5..2a8bf6b45a30 100644
> --- a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
> +++ b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
> @@ -374,6 +374,7 @@ cs_etm_decoder__buffer_range(struct cs_etm_decoder *decoder,
> break;
> case OCSD_INSTR_ISB:
> case OCSD_INSTR_DSB_DMB:
> + case OCSD_INSTR_WFI_WFE:
> case OCSD_INSTR_OTHER:
> default:
> packet->last_instr_taken_branch = false;
> --
>
Your patch is now technically sound. Please run it through checkpatch
and rebase your work against the coresight next tree [1].
[1]. https://git.linaro.org/kernel/coresight.git/log/?h=next
> 2.19.1
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-03-20 16:03 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-20 3:20 [PATCH v3] perf tools: Add missing case value Solomon Tan
2019-03-20 16:03 ` Mathieu Poirier
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).