瀏覽代碼

simpletrace: changed naming of edict and idtoname to improve readability

Readability is subjective, but I've expanded the naming of the variables
and arguments, to help with understanding for new eyes on the code.

Signed-off-by: Mads Ynddal <m.ynddal@samsung.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 20230926103436.25700-5-mads@ynddal.dk
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Mads Ynddal 1 年之前
父節點
當前提交
3b71b61e9f
共有 1 個文件被更改,包括 17 次插入17 次删除
  1. 17 17
      scripts/simpletrace.py

+ 17 - 17
scripts/simpletrace.py

@@ -40,17 +40,17 @@ def read_header(fobj, hfmt):
         return None
         return None
     return struct.unpack(hfmt, hdr)
     return struct.unpack(hfmt, hdr)
 
 
-def get_record(edict, idtoname, rechdr, fobj):
+def get_record(event_mapping, event_id_to_name, rechdr, fobj):
     """Deserialize a trace record from a file into a tuple
     """Deserialize a trace record from a file into a tuple
        (name, timestamp, pid, arg1, ..., arg6)."""
        (name, timestamp, pid, arg1, ..., arg6)."""
     if rechdr is None:
     if rechdr is None:
         return None
         return None
     if rechdr[0] != dropped_event_id:
     if rechdr[0] != dropped_event_id:
         event_id = rechdr[0]
         event_id = rechdr[0]
-        name = idtoname[event_id]
+        name = event_id_to_name[event_id]
         rec = (name, rechdr[1], rechdr[3])
         rec = (name, rechdr[1], rechdr[3])
         try:
         try:
-            event = edict[name]
+            event = event_mapping[name]
         except KeyError as e:
         except KeyError as e:
             sys.stderr.write('%s event is logged but is not declared ' \
             sys.stderr.write('%s event is logged but is not declared ' \
                              'in the trace events file, try using ' \
                              'in the trace events file, try using ' \
@@ -79,10 +79,10 @@ def get_mapping(fobj):
 
 
     return (event_id, name)
     return (event_id, name)
 
 
-def read_record(edict, idtoname, fobj):
+def read_record(event_mapping, event_id_to_name, fobj):
     """Deserialize a trace record from a file into a tuple (event_num, timestamp, pid, arg1, ..., arg6)."""
     """Deserialize a trace record from a file into a tuple (event_num, timestamp, pid, arg1, ..., arg6)."""
     rechdr = read_header(fobj, rec_header_fmt)
     rechdr = read_header(fobj, rec_header_fmt)
-    return get_record(edict, idtoname, rechdr, fobj)
+    return get_record(event_mapping, event_id_to_name, rechdr, fobj)
 
 
 def read_trace_header(fobj):
 def read_trace_header(fobj):
     """Read and verify trace file header"""
     """Read and verify trace file header"""
@@ -103,14 +103,14 @@ def read_trace_header(fobj):
         raise ValueError('Log format %d not supported with this QEMU release!'
         raise ValueError('Log format %d not supported with this QEMU release!'
                          % log_version)
                          % log_version)
 
 
-def read_trace_records(edict, idtoname, fobj):
+def read_trace_records(event_mapping, event_id_to_name, fobj):
     """Deserialize trace records from a file, yielding record tuples (event_num, timestamp, pid, arg1, ..., arg6).
     """Deserialize trace records from a file, yielding record tuples (event_num, timestamp, pid, arg1, ..., arg6).
 
 
-    Note that `idtoname` is modified if the file contains mapping records.
+    Note that `event_id_to_name` is modified if the file contains mapping records.
 
 
     Args:
     Args:
-        edict (str -> Event): events dict, indexed by name
-        idtoname (int -> str): event names dict, indexed by event ID
+        event_mapping (str -> Event): events dict, indexed by name
+        event_id_to_name (int -> str): event names dict, indexed by event ID
         fobj (file): input file
         fobj (file): input file
 
 
     """
     """
@@ -122,9 +122,9 @@ def read_trace_records(edict, idtoname, fobj):
         (rectype, ) = struct.unpack('=Q', t)
         (rectype, ) = struct.unpack('=Q', t)
         if rectype == record_type_mapping:
         if rectype == record_type_mapping:
             event_id, name = get_mapping(fobj)
             event_id, name = get_mapping(fobj)
-            idtoname[event_id] = name
+            event_id_to_name[event_id] = name
         else:
         else:
-            rec = read_record(edict, idtoname, fobj)
+            rec = read_record(event_mapping, event_id_to_name, fobj)
 
 
             yield rec
             yield rec
 
 
@@ -201,16 +201,16 @@ def process(events, log, analyzer, read_header=True):
     frameinfo = inspect.getframeinfo(inspect.currentframe())
     frameinfo = inspect.getframeinfo(inspect.currentframe())
     dropped_event = Event.build("Dropped_Event(uint64_t num_events_dropped)",
     dropped_event = Event.build("Dropped_Event(uint64_t num_events_dropped)",
                                 frameinfo.lineno + 1, frameinfo.filename)
                                 frameinfo.lineno + 1, frameinfo.filename)
-    edict = {"dropped": dropped_event}
-    idtoname = {dropped_event_id: "dropped"}
+    event_mapping = {"dropped": dropped_event}
+    event_id_to_name = {dropped_event_id: "dropped"}
 
 
     for event in events_list:
     for event in events_list:
-        edict[event.name] = event
+        event_mapping[event.name] = event
 
 
     # If there is no header assume event ID mapping matches events list
     # If there is no header assume event ID mapping matches events list
     if not read_header:
     if not read_header:
         for event_id, event in enumerate(events_list):
         for event_id, event in enumerate(events_list):
-            idtoname[event_id] = event.name
+            event_id_to_name[event_id] = event.name
 
 
     def build_fn(analyzer, event):
     def build_fn(analyzer, event):
         if isinstance(event, str):
         if isinstance(event, str):
@@ -234,9 +234,9 @@ def build_fn(analyzer, event):
 
 
     analyzer.begin()
     analyzer.begin()
     fn_cache = {}
     fn_cache = {}
-    for rec in read_trace_records(edict, idtoname, log):
+    for rec in read_trace_records(event_mapping, event_id_to_name, log):
         event_num = rec[0]
         event_num = rec[0]
-        event = edict[event_num]
+        event = event_mapping[event_num]
         if event_num not in fn_cache:
         if event_num not in fn_cache:
             fn_cache[event_num] = build_fn(analyzer, event)
             fn_cache[event_num] = build_fn(analyzer, event)
         fn_cache[event_num](event, rec)
         fn_cache[event_num](event, rec)