[RFC 8/8] test: clean up test_trace.py code
Heinrich Schuchardt
heinrich.schuchardt at canonical.com
Sun Dec 21 02:58:59 CET 2025
* Add module doc string
* Correct sequence of imports
* Correct long exceeding 100 characters
* Remove unused variables
* Remove module level invocation of check_flamegraph
* Add encoding to open() calls
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
---
test/py/tests/test_trace.py | 35 +++++++++++++++++------------------
1 file changed, 17 insertions(+), 18 deletions(-)
diff --git a/test/py/tests/test_trace.py b/test/py/tests/test_trace.py
index bbe6dd7de41..fc881a1b7a1 100644
--- a/test/py/tests/test_trace.py
+++ b/test/py/tests/test_trace.py
@@ -2,9 +2,11 @@
# Copyright 2022 Google LLC
# Written by Simon Glass <sjg at chromium.org>
+"""Tests for the function trace facility"""
+
import os
-import pytest
import re
+import pytest
import utils
@@ -183,26 +185,25 @@ def check_funcgraph(ubman, fname, proftool, map_fname, trace_dat):
"""
# Generate the funcgraph format
- out = utils.run_and_log(
- ubman, [proftool, '-t', fname, '-o', trace_dat, '-m', map_fname,
- 'dump-ftrace', '-f', 'funcgraph'])
+ utils.run_and_log(ubman, [proftool, '-t', fname, '-o', trace_dat, '-m',
+ map_fname, 'dump-ftrace', '-f', 'funcgraph'])
# Check that the trace has what we expect
cmd = f'trace-cmd report -l {trace_dat} |head -n 70'
out = utils.run_and_log(ubman, ['sh', '-c', cmd])
# First look for this:
- # u-boot-1 0..... 282.101360: funcgraph_entry: 0.004 us | initf_malloc();
+ # u-boot-1 0..... 282.101360: funcgraph_entry: 0.004 us | initf_malloc();
# ...
- # u-boot-1 0..... 282.101369: funcgraph_entry: | initf_bootstage() {
- # u-boot-1 0..... 282.101369: funcgraph_entry: | bootstage_init() {
- # u-boot-1 0..... 282.101369: funcgraph_entry: | dlmalloc() {
+ # u-boot-1 0..... 282.101369: funcgraph_entry: | initf_bootstage() {
+ # u-boot-1 0..... 282.101369: funcgraph_entry: | bootstage_init() {
+ # u-boot-1 0..... 282.101369: funcgraph_entry: | dlmalloc() {
# ...
- # u-boot-1 0..... 282.101375: funcgraph_exit: 0.001 us | }
+ # u-boot-1 0..... 282.101375: funcgraph_exit: 0.001 us | }
# Then look for this:
- # u-boot-1 0..... 282.101375: funcgraph_exit: 0.006 us | }
+ # u-boot-1 0..... 282.101375: funcgraph_exit: 0.006 us | }
# Then check for this:
- # u-boot-1 0..... 282.101375: funcgraph_entry: 0.000 us | event_init();
+ # u-boot-1 0..... 282.101375: funcgraph_entry: 0.000 us | event_init();
expected_indent = None
found_start = False
@@ -218,7 +219,7 @@ def check_funcgraph(ubman, fname, proftool, map_fname, trace_dat):
if found_end:
upto = func
break
- elif func == 'initf_bootstage() ':
+ if func == 'initf_bootstage() ':
found_start = True
expected_indent = indent + ' '
elif found_start and indent == expected_indent and brace == '}':
@@ -268,9 +269,8 @@ def check_flamegraph(ubman, fname, proftool, map_fname, trace_fg):
"""
# Generate the flamegraph format
- out = utils.run_and_log(
- ubman, [proftool, '-t', fname, '-o', trace_fg, '-m', map_fname,
- 'dump-flamegraph'])
+ utils.run_and_log(ubman, [proftool, '-t', fname, '-o', trace_fg, '-m', map_fname,
+ 'dump-flamegraph'])
# Generate the timing graph
utils.run_and_log(
@@ -279,16 +279,15 @@ def check_flamegraph(ubman, fname, proftool, map_fname, trace_fg):
# Add up all the time spend in initf_dm() and its children
total = 0
- with open(trace_fg, 'r') as fd:
+ with open(trace_fg, 'r', encoding='utf-8') as fd:
for line in fd:
line = line.strip()
if line.startswith('initf_dm'):
- func, val = line.split()
+ _, val = line.split()
count = int(val)
total += count
return total
-check_flamegraph
@pytest.mark.slow
@pytest.mark.boardspec('sandbox')
@pytest.mark.buildconfigspec('trace')
--
2.51.0
More information about the U-Boot
mailing list