aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Hajnoczi <stefanha@redhat.com>2018-01-10 20:25:51 +0000
committerStefan Hajnoczi <stefanha@redhat.com>2018-01-29 10:34:55 +0000
commit5069b561894206b65a16c3b8cfebd6b3e76c61d6 (patch)
treeb75aa2d0ab03abc3d86876f25509bb3240484073
parent6233b4a8c2a32ef6955a921246fa08705bbb3676 (diff)
downloadqemu-arm-5069b561894206b65a16c3b8cfebd6b3e76c61d6.tar.gz
tracetool: prefix parse errors with line numbers
Include the file line number in the message that is printed when trace-events parse errors are raised. [Use enumerate(fobj, 1) to avoid having to increment a 0-based index later, as suggested by Eric Blake. --Stefan] Suggested-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-id: 20180110202553.31889-2-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r--scripts/tracetool/__init__.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/scripts/tracetool/__init__.py b/scripts/tracetool/__init__.py
index 0670ec17d5..a744e26f91 100644
--- a/scripts/tracetool/__init__.py
+++ b/scripts/tracetool/__init__.py
@@ -300,13 +300,18 @@ def read_events(fobj):
"""
events = []
- for line in fobj:
+ for lineno, line in enumerate(fobj, 1):
if not line.strip():
continue
if line.lstrip().startswith('#'):
continue
- event = Event.build(line)
+ try:
+ event = Event.build(line)
+ except ValueError as e:
+ arg0 = 'Error on line %d: %s' % (lineno, e.args[0])
+ e.args = (arg0,) + e.args[1:]
+ raise
# transform TCG-enabled events
if "tcg" not in event.properties: