Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 31 Mar 2013 03:56:48 +0000 (UTC)
From:      Neel Natu <neel@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r248938 - head/sys/amd64/vmm/io
Message-ID:  <201303310356.r2V3umuS088637@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: neel
Date: Sun Mar 31 03:56:48 2013
New Revision: 248938
URL: http://svnweb.freebsd.org/changeset/base/248938

Log:
  Add counter to keep track of the number of timer interrupts generated by
  the local apic for each virtual cpu.

Modified:
  head/sys/amd64/vmm/io/vlapic.c

Modified: head/sys/amd64/vmm/io/vlapic.c
==============================================================================
--- head/sys/amd64/vmm/io/vlapic.c	Sun Mar 31 02:03:34 2013	(r248937)
+++ head/sys/amd64/vmm/io/vlapic.c	Sun Mar 31 03:56:48 2013	(r248938)
@@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$");
 
 #include <machine/vmm.h>
 
+#include "vmm_stat.h"
 #include "vmm_lapic.h"
 #include "vmm_ktr.h"
 #include "vdev.h"
@@ -410,6 +411,8 @@ vlapic_periodic_timer(struct vlapic *vla
 	return (vlapic_get_lvt_field(lvt, APIC_LVTT_TM_PERIODIC));
 }
 
+static VMM_STAT(VLAPIC_INTR_TIMER, "timer interrupts generated by vlapic");
+
 static void
 vlapic_fire_timer(struct vlapic *vlapic)
 {
@@ -419,6 +422,7 @@ vlapic_fire_timer(struct vlapic *vlapic)
 	lvt = vlapic_get_lvt(vlapic, APIC_OFFSET_TIMER_LVT);
 
 	if (!vlapic_get_lvt_field(lvt, APIC_LVTT_M)) {
+		vmm_stat_incr(vlapic->vm, vlapic->vcpuid, VLAPIC_INTR_TIMER, 1);
 		vector = vlapic_get_lvt_field(lvt,APIC_LVTT_VECTOR);
 		vlapic_set_intr_ready(vlapic, vector);
 	}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201303310356.r2V3umuS088637>