hypervisor call tracepoints hcall_stats touchup.
Anton Blanchard
anton at samba.org
Thu Nov 26 14:28:22 EST 2009
Hi Will,
> The tb_total and purr_total values reported via the hcall_stats code
> should be cumulative, rather than being replaced by the latest delta tb
> or purr value.
>
> Tested-by: Will Schmidt <will_schmidt at vnet.ibm.com>
> Signed-off-by: Will Schmidt <will_schmidt at vnet.ibm.com>
Ouch! Nice catch.
Acked-by: Anton Blanchard <anton at samba.org>
Anton
> [ This is a touch-up to the "[3/6] powerpc: tracing: Add hypervisor call
> tracepoints" patch submitted by Anton a few weeks back, so I've copied
> folks Anton had on CC for his original patch, this fix is rather ppc
> specific, so can probably go in via the ppc tree, but I've no real
> preference. ]
>
> diff --git a/arch/powerpc/platforms/pseries/hvCall_inst.c b/arch/powerpc/platforms/pseries/hvCall_inst.c
> index 2f58c71..1fefae7 100644
> --- a/arch/powerpc/platforms/pseries/hvCall_inst.c
> +++ b/arch/powerpc/platforms/pseries/hvCall_inst.c
> @@ -124,8 +124,8 @@ static void probe_hcall_exit(unsigned long opcode, unsigned long retval,
>
> h = &__get_cpu_var(hcall_stats)[opcode / 4];
> h->num_calls++;
> - h->tb_total = mftb() - h->tb_start;
> - h->purr_total = mfspr(SPRN_PURR) - h->purr_start;
> + h->tb_total += mftb() - h->tb_start;
> + h->purr_total += mfspr(SPRN_PURR) - h->purr_start;
>
> put_cpu_var(hcall_stats);
> }
>
More information about the Linuxppc-dev
mailing list