From: Harsh Bora <harsh@linux.vnet.ibm.com>
To: "Lluís Vilanova" <vilanova@ac.upc.edu>
Cc: aneesh.kumar@linux.vnet.ibm.com, qemu-devel@nongnu.org,
stefanha@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] [PATCH 3/6] trace: [ŧracetool] Do not precompute the event number
Date: Wed, 18 Jan 2012 15:18:02 +0530 [thread overview]
Message-ID: <4F169552.5070705@linux.vnet.ibm.com> (raw)
In-Reply-To: <20120111180535.25198.43232.stgit@ginnungagap.bsc.es>
On 01/11/2012 11:35 PM, Lluís Vilanova wrote:
> This would otherwise break event numbering when actually using the "disable"
> property.
>
IIUC, event numbering does include disabled events too, are you
proposing not to include disabled events in event numbering ? That will
affect interpreting event numbers while reading trace logs also.
- Harsh
> Signed-off-by: Lluís Vilanova<vilanova@ac.upc.edu>
> ---
> scripts/tracetool.py | 21 +++++++++------------
> 1 files changed, 9 insertions(+), 12 deletions(-)
>
> diff --git a/scripts/tracetool.py b/scripts/tracetool.py
> index 7a877dc..b7401a3 100755
> --- a/scripts/tracetool.py
> +++ b/scripts/tracetool.py
> @@ -128,7 +128,7 @@ def simple_h(events):
> 'args': event.args
> }
> print
> - print '#define NR_TRACE_EVENTS %d' % (event.num + 1)
> + print '#define NR_TRACE_EVENTS %d' % len(events)
> print 'extern TraceEvent trace_list[NR_TRACE_EVENTS];'
>
> return
> @@ -154,7 +154,7 @@ def simple_c(events):
> print
> print '};'
> print
> - for event in events:
> + for num, event in enumerate(events):
> argc = event.argc
> print '''void trace_%(name)s(%(args)s)
> {
> @@ -169,12 +169,12 @@ def simple_c(events):
> ''' % {
> 'name': event.name,
> 'args': event.args,
> - 'event_id': event.num,
> + 'event_id': num,
> }
> print '''
> tbuf_idx = trace_alloc_record(%(event_id)s, %(sizestr)s);
> rec_off = (tbuf_idx + ST_V2_REC_HDR_LEN) %% TRACE_BUF_LEN; /* seek record header */
> -''' % {'event_id': event.num, 'sizestr': event.sizestr,}
> +''' % {'event_id': num, 'sizestr': event.sizestr,}
>
> if argc> 0:
> str = event.arglist
> @@ -220,7 +220,7 @@ def stderr_h(events):
> #include "trace/stderr.h"
>
> extern TraceEvent trace_list[];'''
> - for event in events:
> + for num, event in enumerate(events):
> argnames = event.argnames
> if event.argc> 0:
> argnames = ', ' + event.argnames
> @@ -235,12 +235,12 @@ static inline void trace_%(name)s(%(args)s)
> }''' % {
> 'name': event.name,
> 'args': event.args,
> - 'event_num': event.num,
> + 'event_num': num,
> 'fmt': event.fmt.rstrip('\n'),
> 'argnames': argnames
> }
> print
> - print '#define NR_TRACE_EVENTS %d' % (event.num + 1)
> + print '#define NR_TRACE_EVENTS %d' % len(events)
>
> def stderr_c(events):
> print '''#include "trace.h"
> @@ -475,8 +475,7 @@ import re
> cre = re.compile("(?P<name>[^(\s]+)\((?P<args>[^)]*)\)\s*(?P<fmt>\".*\")?")
>
> class Event(object):
> - def __init__(self, num, line):
> - self.num = num
> + def __init__(self, line):
> m = cre.match(line)
> assert m is not None
> groups = m.groupdict('')
> @@ -491,14 +490,12 @@ class Event(object):
> # Generator that yields Event objects given a trace-events file object
> def read_events(fobj):
> res = []
> - event_num = 0
> for line in fobj:
> if not line.strip():
> continue
> if line.lstrip().startswith('#'):
> continue
> - res.append(Event(event_num, line))
> - event_num += 1
> + res.append(Event(line))
> return res
>
> backend = ""
>
>
next prev parent reply other threads:[~2012-01-18 9:48 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-11 18:05 [Qemu-devel] [PATCH 1/6] trace: [tracetool] Do not rebuild event list in backend code Lluís Vilanova
2012-01-11 18:05 ` [Qemu-devel] [PATCH 2/6] trace: [tracetool] Simplify event line parsing Lluís Vilanova
2012-01-11 18:05 ` [Qemu-devel] [PATCH 3/6] trace: [ŧracetool] Do not precompute the event number Lluís Vilanova
2012-01-18 9:48 ` Harsh Bora [this message]
2012-01-18 10:34 ` Stefan Hajnoczi
2012-01-11 18:05 ` [Qemu-devel] [PATCH 4/6] trace: [tracetool] Add support for event properties Lluís Vilanova
2012-01-11 18:06 ` [Qemu-devel] [PATCH 5/6] trace: [tracetool] Process the "disable" event property Lluís Vilanova
2012-01-11 18:06 ` [Qemu-devel] [PATCH 6/6] trace: [tracetool] Rewrite event argument parsing Lluís Vilanova
2012-01-11 19:16 ` [Qemu-devel] [PATH 7/6] trace: [tracetool] Make format-specific code optional and with access to event information Lluís Vilanova
2012-01-18 9:22 ` [Qemu-devel] [PATCH 1/6] trace: [tracetool] Do not rebuild event list in backend code Harsh Bora
2012-01-18 11:45 ` Lluís Vilanova
2012-01-18 12:00 ` Lluís Vilanova
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F169552.5070705@linux.vnet.ibm.com \
--to=harsh@linux.vnet.ibm.com \
--cc=aneesh.kumar@linux.vnet.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@linux.vnet.ibm.com \
--cc=vilanova@ac.upc.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.