From patchwork Sun Apr 21 19:11:52 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Llu=C3=ADs_Vilanova?= X-Patchwork-Id: 238254 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 184A42C0117 for ; Mon, 22 Apr 2013 05:49:20 +1000 (EST) Received: from localhost ([::1]:54231 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UTzkk-00060U-Pf for incoming@patchwork.ozlabs.org; Sun, 21 Apr 2013 15:16:46 -0400 Received: from eggs.gnu.org ([208.118.235.92]:34779) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UTzg3-0007Ej-0U for qemu-devel@nongnu.org; Sun, 21 Apr 2013 15:11:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UTzg1-0001e7-Ki for qemu-devel@nongnu.org; Sun, 21 Apr 2013 15:11:54 -0400 Received: from roura.ac.upc.es ([147.83.33.10]:33177) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UTzg1-0001dw-9x for qemu-devel@nongnu.org; Sun, 21 Apr 2013 15:11:53 -0400 Received: from gw.ac.upc.edu (gw.ac.upc.es [147.83.30.3]) by roura.ac.upc.es (8.13.8/8.13.8) with ESMTP id r3LJBqGm001769 for ; Sun, 21 Apr 2013 21:11:52 +0200 Received: from localhost (unknown [84.88.51.85]) by gw.ac.upc.edu (Postfix) with ESMTP id 92B666B01A4 for ; Sun, 21 Apr 2013 21:11:52 +0200 (CEST) From: =?utf-8?b?TGx1w61z?= Vilanova To: qemu-devel@nongnu.org Date: Sun, 21 Apr 2013 21:11:52 +0200 Message-Id: <20130421191152.8947.89667.stgit@fimbulvetr.bsc.es> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <20130421191129.8947.77964.stgit@fimbulvetr.bsc.es> References: <20130421191129.8947.77964.stgit@fimbulvetr.bsc.es> User-Agent: StGit/0.16 MIME-Version: 1.0 X-MIME-Autoconverted: from 8bit to quoted-printable by roura.ac.upc.es id r3LJBqGm001769 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 147.83.33.10 Subject: [Qemu-devel] [PATCH v3 04/24] tracetool: Use method 'Event.api' to get the name of public routines X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org This ensures proper naming across tracing backends, even when someone overrides the value without backends knowing it. Signed-off-by: Lluís Vilanova --- scripts/tracetool/__init__.py | 10 +++++++++- scripts/tracetool/backend/dtrace.py | 6 +++--- scripts/tracetool/backend/simple.py | 8 ++++---- scripts/tracetool/backend/stderr.py | 5 +++-- scripts/tracetool/backend/ust.py | 8 +++++--- scripts/tracetool/format/h.py | 6 +++--- 6 files changed, 27 insertions(+), 16 deletions(-) diff --git a/scripts/tracetool/__init__.py b/scripts/tracetool/__init__.py index 175df08..7e4d651 100644 --- a/scripts/tracetool/__init__.py +++ b/scripts/tracetool/__init__.py @@ -6,7 +6,7 @@ Machinery for generating tracing-related intermediate files. """ __author__ = "Lluís Vilanova " -__copyright__ = "Copyright 2012, Lluís Vilanova " +__copyright__ = "Copyright 2012-2013, Lluís Vilanova " __license__ = "GPL version 2 or (at your option) any later version" __maintainer__ = "Stefan Hajnoczi" @@ -173,6 +173,14 @@ class Event(object): self.args, self.fmt) + + QEMU_TRACE = "trace_%(name)s" + + def api(self, fmt = None): + if fmt is None: + fmt = Event.QEMU_TRACE + return fmt % { "name" : self.name } + def _read_events(fobj): res = [] for line in fobj: diff --git a/scripts/tracetool/backend/dtrace.py b/scripts/tracetool/backend/dtrace.py index e31bc79..3a34600 100644 --- a/scripts/tracetool/backend/dtrace.py +++ b/scripts/tracetool/backend/dtrace.py @@ -6,7 +6,7 @@ DTrace/SystemTAP backend. """ __author__ = "Lluís Vilanova " -__copyright__ = "Copyright 2012, Lluís Vilanova " +__copyright__ = "Copyright 2012-2013, Lluís Vilanova " __license__ = "GPL version 2 or (at your option) any later version" __maintainer__ = "Stefan Hajnoczi" @@ -44,10 +44,10 @@ def h(events): '') for e in events: - out('static inline void trace_%(name)s(%(args)s) {', + out('static inline void %(api)s(%(args)s) {', ' QEMU_%(uppername)s(%(argnames)s);', '}', - name = e.name, + api = e.api(), args = e.args, uppername = e.name.upper(), argnames = ", ".join(e.args.names()), diff --git a/scripts/tracetool/backend/simple.py b/scripts/tracetool/backend/simple.py index e754f0d..b7337af 100644 --- a/scripts/tracetool/backend/simple.py +++ b/scripts/tracetool/backend/simple.py @@ -34,10 +34,10 @@ def c(events): ) for num, event in enumerate(events): - out('void trace_%(name)s(%(args)s)', + out('void %(api)s(%(args)s)', '{', ' TraceBufferRecord rec;', - name = event.name, + api = event.api(), args = event.args, ) sizes = [] @@ -94,7 +94,7 @@ def c(events): def h(events): for event in events: - out('void trace_%(name)s(%(args)s);', - name = event.name, + out('void %(api)s(%(args)s);', + api = event.api(), args = event.args, ) diff --git a/scripts/tracetool/backend/stderr.py b/scripts/tracetool/backend/stderr.py index 6f93dbd..d9b7121 100644 --- a/scripts/tracetool/backend/stderr.py +++ b/scripts/tracetool/backend/stderr.py @@ -6,7 +6,7 @@ Stderr built-in backend. """ __author__ = "Lluís Vilanova " -__copyright__ = "Copyright 2012, Lluís Vilanova " +__copyright__ = "Copyright 2012-2013, Lluís Vilanova " __license__ = "GPL version 2 or (at your option) any later version" __maintainer__ = "Stefan Hajnoczi" @@ -33,13 +33,14 @@ def h(events): if len(e.args) > 0: argnames = ", " + argnames - out('static inline void trace_%(name)s(%(args)s)', + out('static inline void %(api)s(%(args)s)', '{', ' bool _state = trace_event_get_state(%(event_id)s);', ' if (_state) {', ' fprintf(stderr, "%(name)s " %(fmt)s "\\n" %(argnames)s);', ' }', '}', + api = e.api(), name = e.name, args = e.args, event_id = "TRACE_" + e.name.upper(), diff --git a/scripts/tracetool/backend/ust.py b/scripts/tracetool/backend/ust.py index ea36995..2f4cb23 100644 --- a/scripts/tracetool/backend/ust.py +++ b/scripts/tracetool/backend/ust.py @@ -6,7 +6,7 @@ LTTng User Space Tracing backend. """ __author__ = "Lluís Vilanova " -__copyright__ = "Copyright 2012, Lluís Vilanova " +__copyright__ = "Copyright 2012-2013, Lluís Vilanova " __license__ = "GPL version 2 or (at your option) any later version" __maintainer__ = "Stefan Hajnoczi" @@ -78,7 +78,8 @@ def h(events): for e in events: if len(e.args) > 0: out('DECLARE_TRACE(ust_%(name)s, TP_PROTO(%(args)s), TP_ARGS(%(argnames)s));', - '#define trace_%(name)s trace_ust_%(name)s', + '#define %(api)s trace_ust_%(name)s', + api = e.api(), name = e.name, args = e.args, argnames = ", ".join(e.args.names()), @@ -86,7 +87,8 @@ def h(events): else: out('_DECLARE_TRACEPOINT_NOARGS(ust_%(name)s);', - '#define trace_%(name)s trace_ust_%(name)s', + '#define %(api)s trace_ust_%(name)s', + api = e.api(), name = e.name, ) diff --git a/scripts/tracetool/format/h.py b/scripts/tracetool/format/h.py index 93132fc..ed7c8a5 100644 --- a/scripts/tracetool/format/h.py +++ b/scripts/tracetool/format/h.py @@ -6,7 +6,7 @@ Generate .h file. """ __author__ = "Lluís Vilanova " -__copyright__ = "Copyright 2012, Lluís Vilanova " +__copyright__ = "Copyright 2012-2013, Lluís Vilanova " __license__ = "GPL version 2 or (at your option) any later version" __maintainer__ = "Stefan Hajnoczi" @@ -30,9 +30,9 @@ def end(events): def nop(events): for e in events: out('', - 'static inline void trace_%(name)s(%(args)s)', + 'static inline void %(api)s(%(args)s)', '{', '}', - name = e.name, + api = e.api(), args = e.args, )