diff mbox series

[v5,1/6] perf: cs-etm: Don't duplicate FIELD_GET()

Message ID 20230811144017.491628-2-james.clark@arm.com (mailing list archive)
State New, archived
Headers show
Series perf vendor events arm64: Update N2 and V2 metrics and events using Arm telemetry repo | expand

Commit Message

James Clark Aug. 11, 2023, 2:39 p.m. UTC
linux/bitfield.h can be included as long as linux/kernel.h is included
first, so change the order of the includes and drop the duplicate macro.

Reviewed-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: James Clark <james.clark@arm.com>
---
 tools/perf/util/cs-etm.c | 14 ++------------
 1 file changed, 2 insertions(+), 12 deletions(-)

Comments

Arnaldo Carvalho de Melo Aug. 15, 2023, 6:09 p.m. UTC | #1
Em Fri, Aug 11, 2023 at 03:39:18PM +0100, James Clark escreveu:
> linux/bitfield.h can be included as long as linux/kernel.h is included
> first, so change the order of the includes and drop the duplicate macro.

Applied this one, to reduce the patch series size.

- Arnaldo
 
> Reviewed-by: John Garry <john.g.garry@oracle.com>
> Signed-off-by: James Clark <james.clark@arm.com>
> ---
>  tools/perf/util/cs-etm.c | 14 ++------------
>  1 file changed, 2 insertions(+), 12 deletions(-)
> 
> diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
> index 1419b40dfbe8..9729d006550d 100644
> --- a/tools/perf/util/cs-etm.c
> +++ b/tools/perf/util/cs-etm.c
> @@ -6,10 +6,11 @@
>   * Author: Mathieu Poirier <mathieu.poirier@linaro.org>
>   */
>  
> +#include <linux/kernel.h>
> +#include <linux/bitfield.h>
>  #include <linux/bitops.h>
>  #include <linux/coresight-pmu.h>
>  #include <linux/err.h>
> -#include <linux/kernel.h>
>  #include <linux/log2.h>
>  #include <linux/types.h>
>  #include <linux/zalloc.h>
> @@ -281,17 +282,6 @@ static int cs_etm__metadata_set_trace_id(u8 trace_chan_id, u64 *cpu_metadata)
>  	return 0;
>  }
>  
> -/*
> - * FIELD_GET (linux/bitfield.h) not available outside kernel code,
> - * and the header contains too many dependencies to just copy over,
> - * so roll our own based on the original
> - */
> -#define __bf_shf(x) (__builtin_ffsll(x) - 1)
> -#define FIELD_GET(_mask, _reg)						\
> -	({								\
> -		(typeof(_mask))(((_reg) & (_mask)) >> __bf_shf(_mask)); \
> -	})
> -
>  /*
>   * Get a metadata for a specific cpu from an array.
>   *
> -- 
> 2.34.1
>
diff mbox series

Patch

diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
index 1419b40dfbe8..9729d006550d 100644
--- a/tools/perf/util/cs-etm.c
+++ b/tools/perf/util/cs-etm.c
@@ -6,10 +6,11 @@ 
  * Author: Mathieu Poirier <mathieu.poirier@linaro.org>
  */
 
+#include <linux/kernel.h>
+#include <linux/bitfield.h>
 #include <linux/bitops.h>
 #include <linux/coresight-pmu.h>
 #include <linux/err.h>
-#include <linux/kernel.h>
 #include <linux/log2.h>
 #include <linux/types.h>
 #include <linux/zalloc.h>
@@ -281,17 +282,6 @@  static int cs_etm__metadata_set_trace_id(u8 trace_chan_id, u64 *cpu_metadata)
 	return 0;
 }
 
-/*
- * FIELD_GET (linux/bitfield.h) not available outside kernel code,
- * and the header contains too many dependencies to just copy over,
- * so roll our own based on the original
- */
-#define __bf_shf(x) (__builtin_ffsll(x) - 1)
-#define FIELD_GET(_mask, _reg)						\
-	({								\
-		(typeof(_mask))(((_reg) & (_mask)) >> __bf_shf(_mask)); \
-	})
-
 /*
  * Get a metadata for a specific cpu from an array.
  *