[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1329409183.2293.245.camel@twins>
Date: Thu, 16 Feb 2012 17:19:43 +0100
From: Peter Zijlstra <a.p.zijlstra@...llo.nl>
To: Ming Lei <ming.lei@...onical.com>
Cc: Will Deacon <will.deacon@....com>,
"eranian@...il.com" <eranian@...il.com>,
"Shilimkar, Santosh" <santosh.shilimkar@...com>,
David Long <dave.long@...aro.org>,
"b-cousson@...com" <b-cousson@...com>,
"mans@...sr.com" <mans@...sr.com>,
linux-arm <linux-arm-kernel@...ts.infradead.org>,
Ingo Molnar <mingo@...e.hu>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: oprofile and ARM A9 hardware counter
On Fri, 2012-02-17 at 00:12 +0800, Ming Lei wrote:
> is triggered: u64 delta = 100 - 1000000 = 18446744073708551716.
on x86 we do:
int shift = 64 - x86_pmu.cntval_bits;
s64 delta;
delta = (new_raw_count << shift) - (prev_raw_count << shift);
delta >>= shift;
This deals with short overflows (on x86 the registers are typically 40
or 48 bits wide). If the arm register is 32 you can of course also get
there with some u32 casts.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists