]> Git Repo - qemu.git/commitdiff
trace: improve error reporting when parsing simpletrace header
authorDaniel P. Berrange <[email protected]>
Wed, 25 Jan 2017 16:14:17 +0000 (16:14 +0000)
committerStefan Hajnoczi <[email protected]>
Tue, 31 Jan 2017 17:11:18 +0000 (17:11 +0000)
When loading a simpletrace binary file we just report
"Not a valid trace file!" which is not very helpful. Report
exactly which field we found to be invalid.

Reviewed-by: Stefan Hajnoczi <[email protected]>
Reviewed-by: Eric Blake <[email protected]>
Signed-off-by: Daniel P. Berrange <[email protected]>
Message-id: 20170125161417[email protected]
Signed-off-by: Stefan Hajnoczi <[email protected]>
scripts/simpletrace.py

index 4ca903dc0cfd9210465ec317426b4cbc422219c8..4c990047b6cec3fc15116a72ffb0180ada47775b 100755 (executable)
@@ -73,10 +73,14 @@ def read_record(edict, idtoname, fobj):
 def read_trace_header(fobj):
     """Read and verify trace file header"""
     header = read_header(fobj, log_header_fmt)
-    if header is None or \
-       header[0] != header_event_id or \
-       header[1] != header_magic:
+    if header is None:
         raise ValueError('Not a valid trace file!')
+    if header[0] != header_event_id:
+        raise ValueError('Not a valid trace file, header id %d != %d' %
+                         (header[0], header_event_id))
+    if header[1] != header_magic:
+        raise ValueError('Not a valid trace file, header magic %d != %d' %
+                         (header[1], header_magic))
 
     log_version = header[2]
     if log_version not in [0, 2, 3, 4]:
This page took 0.026301 seconds and 4 git commands to generate.