--- /dev/null
+diff --git a/include/linux/oprofile.h b/include/linux/oprofile.h
+index bb8a349..44a2138 100644
+--- a/include/linux/oprofile.h
++++ b/include/linux/oprofile.h
+@@ -37,9 +37,18 @@
+ #define TRACE_BEGIN_CODE 8
+ #define TRACE_END_CODE 9
+ #define XEN_ENTER_SWITCH_CODE 10
++/*
++ * Ugly work-around for the unfortunate collision between Xenoprof's
++ * DOMAIN_SWITCH_CODE (in use on x86 and ia64) and Cell's SPU_PROFILING_CODE
++ * (in use with Power):
++ */
++#if defined(CONFIG_X86_32) || defined(CONFIG_X86_64) || defined(CONFIG_IA64)
++#define DOMAIN_SWITCH_CODE 11
++#else
+ #define SPU_PROFILING_CODE 11
+ #define SPU_CTX_SWITCH_CODE 12
+ #define DOMAIN_SWITCH_CODE 13
++#endif
+
+ struct super_block;
+ struct dentry;