Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6a11f92e authored by Jiri Olsa's avatar Jiri Olsa Committed by Arnaldo Carvalho de Melo
Browse files

perf tools: Add union u64_swap type for swapping u64 data



The following union:
  union {
        u64 val64;
        u32 val32[2];
  } u;

is used on more than one place in perf code and will be used more in
upcomming patches.

Adding union u64_swap to have it defined globaly so we dont need to
redefine it all the time.

Signed-off-by: default avatarJiri Olsa <jolsa@redhat.com>
Reviewed-by: default avatarDavid Ahern <dsahern@gmail.com>
Tested-by: default avatarDavid Ahern <dsahern@gmail.com>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1337151548-2396-4-git-send-email-jolsa@redhat.com


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent e108c66e
Loading
Loading
Loading
Loading
+2 −8
Original line number Diff line number Diff line
@@ -462,10 +462,7 @@ int perf_event__parse_sample(const union perf_event *event, u64 type,
	 * used for cross-endian analysis. See git commit 65014ab3
	 * for why this goofiness is needed.
	 */
	union {
		u64 val64;
		u32 val32[2];
	} u;
	union u64_swap u;

	memset(data, 0, sizeof(*data));
	data->cpu = data->pid = data->tid = -1;
@@ -608,10 +605,7 @@ int perf_event__synthesize_sample(union perf_event *event, u64 type,
	 * used for cross-endian analysis. See git commit 65014ab3
	 * for why this goofiness is needed.
	 */
	union {
		u64 val64;
		u32 val32[2];
	} u;
	union u64_swap u;

	array = event->sample.array;

+5 −0
Original line number Diff line number Diff line
@@ -16,4 +16,9 @@ typedef signed short s16;
typedef unsigned char	   u8;
typedef signed char	   s8;

union u64_swap {
	u64 val64;
	u32 val32[2];
};

#endif /* __PERF_TYPES_H */