Patchwork oprofile: add AArch64 support

login
register
mail settings
Submitter Marcin Juszkiewicz
Date Jan. 16, 2013, 3:49 p.m.
Message ID <1358351356-5969-1-git-send-email-marcin.juszkiewicz@linaro.org>
Download mbox | patch
Permalink /patch/42721/
State Accepted
Commit 9f263a60e3521b800121a6f527a7b30dc9b62432
Headers show

Comments

Marcin Juszkiewicz - Jan. 16, 2013, 3:49 p.m.
Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
---
 ...d-rmb-definition-for-AArch64-architecture.patch | 31 ++++++++++++++++++++++
 meta/recipes-kernel/oprofile/oprofile_0.9.8.bb     |  3 ++-
 2 files changed, 33 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch
Saul Wold - Jan. 16, 2013, 3:52 p.m.
On 01/16/2013 07:49 AM, Marcin Juszkiewicz wrote:
> Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
> ---
>   ...d-rmb-definition-for-AArch64-architecture.patch | 31 ++++++++++++++++++++++
>   meta/recipes-kernel/oprofile/oprofile_0.9.8.bb     |  3 ++-
>   2 files changed, 33 insertions(+), 1 deletion(-)
>   create mode 100644 meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch
>
> diff --git a/meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch b/meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch
> new file mode 100644
> index 0000000..195bfb2
> --- /dev/null
> +++ b/meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch
> @@ -0,0 +1,31 @@
> +From 27edaef9c6d66dfc324630ef40cb27e78031eeeb Mon Sep 17 00:00:00 2001
> +From: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
> +Date: Tue, 15 Jan 2013 07:37:33 +0100
> +Subject: [PATCH] Add rmb() definition for AArch64 architecture
> +
> +Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
> +
> +Upstream-status: backport

Upstream-Status: Backport

Capital Status please

Thanks
	Sau!



> +---
> + libperf_events/operf_utils.h | 5 +++++
> + 1 file changed, 5 insertions(+)
> +
> +diff --git a/libperf_events/operf_utils.h b/libperf_events/operf_utils.h
> +index 815d51d..2df00b7 100644
> +--- a/libperf_events/operf_utils.h
> ++++ b/libperf_events/operf_utils.h
> +@@ -148,6 +148,11 @@ void op_release_resources(void);
> + #define cpu_relax()	asm volatile("":::"memory")
> + #endif
> +
> ++#ifdef __aarch64__
> ++#define rmb()		asm volatile("dmb ld" ::: "memory")
> ++#define cpu_relax()	asm volatile("yield" ::: "memory")
> ++#endif
> ++
> + #ifdef __mips__
> + #include <asm/unistd.h>
> + #define rmb()		asm volatile(					\
> +--
> +1.8.0
> +
> diff --git a/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb b/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
> index 939c1ba..d283b5c 100644
> --- a/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
> +++ b/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
> @@ -2,7 +2,8 @@ require oprofile.inc
>
>   PR = "${INC_PR}.0"
>
> -SRC_URI += "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz"
> +SRC_URI += "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
> +            file://0001-Add-rmb-definition-for-AArch64-architecture.patch"
>
>   SRC_URI[md5sum] = "6d127023af1dd1cf24e15411229f3cc8"
>   SRC_URI[sha256sum] = "ab45900fa1a23e5d5badf3c0a55f26c17efe6e184efcf00b371433751fa761bc"
>

Patch

diff --git a/meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch b/meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch
new file mode 100644
index 0000000..195bfb2
--- /dev/null
+++ b/meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch
@@ -0,0 +1,31 @@ 
+From 27edaef9c6d66dfc324630ef40cb27e78031eeeb Mon Sep 17 00:00:00 2001
+From: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
+Date: Tue, 15 Jan 2013 07:37:33 +0100
+Subject: [PATCH] Add rmb() definition for AArch64 architecture
+
+Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
+
+Upstream-status: backport
+---
+ libperf_events/operf_utils.h | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/libperf_events/operf_utils.h b/libperf_events/operf_utils.h
+index 815d51d..2df00b7 100644
+--- a/libperf_events/operf_utils.h
++++ b/libperf_events/operf_utils.h
+@@ -148,6 +148,11 @@ void op_release_resources(void);
+ #define cpu_relax()	asm volatile("":::"memory")
+ #endif
+ 
++#ifdef __aarch64__
++#define rmb()		asm volatile("dmb ld" ::: "memory")
++#define cpu_relax()	asm volatile("yield" ::: "memory")
++#endif
++
+ #ifdef __mips__
+ #include <asm/unistd.h>
+ #define rmb()		asm volatile(					\
+-- 
+1.8.0
+
diff --git a/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb b/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
index 939c1ba..d283b5c 100644
--- a/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
+++ b/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
@@ -2,7 +2,8 @@  require oprofile.inc
 
 PR = "${INC_PR}.0"
 
-SRC_URI += "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz"
+SRC_URI += "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
+            file://0001-Add-rmb-definition-for-AArch64-architecture.patch"
 
 SRC_URI[md5sum] = "6d127023af1dd1cf24e15411229f3cc8"
 SRC_URI[sha256sum] = "ab45900fa1a23e5d5badf3c0a55f26c17efe6e184efcf00b371433751fa761bc"