Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-devel

Re: [Xen-devel] Recent trace patch not arch-neutral

To: Rob Gardner <rob.gardner@xxxxxx>
Subject: Re: [Xen-devel] Recent trace patch not arch-neutral
From: Rob Gardner <rob.gardner@xxxxxx>
Date: Mon, 31 Oct 2005 16:26:19 -0700
Cc: "Magenheimer, Dan \(HP Labs Fort Collins\)" <dan.magenheimer@xxxxxx>, Ian Pratt <m+Ian.Pratt@xxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 31 Oct 2005 23:23:35 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4366A2B4.6070406@xxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <A95E2296287EAD4EB592B5DEEFCE0E9D32E6D0@xxxxxxxxxxxxxxxxxxxxxxxxxxx> <4366A2B4.6070406@xxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)
Rob Gardner wrote:

Now, to answer Dan's question- the rdtscll thing is just a time stamp counter, expressed in cycles. So on ia64 you could probably replace it with an asm statement to read ar.itc to make everything work. We just need a little wrapper to do the right thing for each architecture. Now Dan, if you were more conveniently located, perhaps we could work together and fix this. ;)


I imagine we just need something that looks like this in trace.c:

#ifdef x86
       rdtscll(rec->cycles);
#endif
#ifdef IA64
       __asm__ __volatile ("mov %0=ar.itc;;" : "=r"(rec->cycles) :: "memory");
#endif

Dan, perhaps you know the nice clean way of doing this sort of thing?

Rob

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>