This is an archived copy of the Xen.org mailing list, which we have
preserved to ensure that existing links to archives are not broken.
The live archive, which contains the latest emails, can be found at
http://lists.xen.org/
> # HG changeset patch
> # User Niraj Tolia <ntolia@xxxxxxxxx>
> # Date 1231217146 28800
> # Node ID eb1ad7bbdaf3ae553a6bf319180b5880f5ac4307
> # Parent 8417ddc981b407753f966c568ef8c7b673d8d22a
> Xenoprof patch to fix the counter overflow check for CPUs with counter
> width > 32
>
> I had to port this patch from mainline Linux where it can be found at
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;
> h=7c64ade53a6f977d73f16243865c42ceae999aea
>
> Signed-off-by: Niraj Tolia <ntolia@xxxxxxxxx>
This patch can't possibly build, and is pointless anyway since the overflow
While the mainline patch won't build, the one attached definitely does. That said, I see your point about the overflow. Now I need to figure out why this broken patch actually enables xenoprof to work on my Intel Xeon. The only reason would be the switch from CTR_READ() (which uses rdmsr() internally) to rdmsrl() but let me dig into it.
Cheers, Niraj
width check is still hardcoded to 32 bits in CTR_OVERFLOWED().