xenoprof: Make the escape code consistent across 32 and 64-bit xen
authorGeorge Dunlap <george.dunlap@eu.citrix.com>
Mon, 23 Jan 2012 09:36:54 +0000 (09:36 +0000)
committerGeorge Dunlap <george.dunlap@eu.citrix.com>
Mon, 23 Jan 2012 09:36:54 +0000 (09:36 +0000)
At the moment, the xenoprof escape code is defined as "~0UL".
Unfortunately, this expands to 0xffffffff on 32-bit systems
and 0xffffffffffffffff on 64-bit systems; with the result that
while 32-on-32 and 64-in-64 work fine, 32-on-64 (also known as
"compat mode") is broken.

This patch makes the definition consistent across architectures.
In so doing, it will break old-32-bit-on-new-Xen, and vice versa;
but this was seen as an acceptable thing to do.

Signed-off-by: Marcus Granado <marcus.granado@eu.citrix.com>
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
xen/include/public/xenoprof.h

index 346d6c514ca306b5175d241537689105204022bc..a0c6987c772c48119a7a46c22067622d7cf40c24 100644 (file)
@@ -68,7 +68,7 @@ struct event_log {
 };
 
 /* PC value that indicates a special code */
-#define XENOPROF_ESCAPE_CODE ~0UL
+#define XENOPROF_ESCAPE_CODE (~0ULL)
 /* Transient events for the xenoprof->oprofile cpu buf */
 #define XENOPROF_TRACE_BEGIN 1