From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: [PATCH 3/4] kvm_stat: allow enabling/disabling events dynamicalls Date: Thu, 17 Feb 2011 14:42:49 +0200 Message-ID: <1297946570-477-4-git-send-email-avi@redhat.com> References: <1297946570-477-1-git-send-email-avi@redhat.com> To: Marcelo Tosatti , kvm@vger.kernel.org Return-path: Received: from mx1.redhat.com ([209.132.183.28]:11874 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756167Ab1BQMnH (ORCPT ); Thu, 17 Feb 2011 07:43:07 -0500 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p1HCh639002907 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Thu, 17 Feb 2011 07:43:06 -0500 Received: from cleopatra.tlv.redhat.com (cleopatra.tlv.redhat.com [10.35.255.11]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p1HCh5AW032521 for ; Thu, 17 Feb 2011 07:43:06 -0500 In-Reply-To: <1297946570-477-1-git-send-email-avi@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: Signed-off-by: Avi Kivity --- kvm/kvm_stat | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletions(-) diff --git a/kvm/kvm_stat b/kvm/kvm_stat index 2e1fe73..e3e9def 100755 --- a/kvm/kvm_stat +++ b/kvm/kvm_stat @@ -265,10 +265,11 @@ class TracepointProvider(object): for name, number in values.iteritems(): extra.append(f + '(' + name + ')') fields += extra + self._setup(fields) self.select(fields) def fields(self): return self._fields - def select(self, _fields): + def _setup(self, _fields): self._fields = _fields cpure = r'cpu([0-9]+)' self.cpus = [int(re.match(cpure, x).group(1)) @@ -293,6 +294,13 @@ class TracepointProvider(object): tracepoint = tracepoint, filter = filter) self.group_leaders.append(group) + def select(self, fields): + for group in self.group_leaders: + for event in group.events: + if event.name in fields: + event.enable() + else: + event.disable() def read(self): from collections import defaultdict ret = defaultdict(int) -- 1.7.1