From: Alison Schofield <[email protected]> Using the bash variable 'SECONDS' plus 1 for searching the dmesg log sometimes led to one test picking up error messages from the previous test when run as a suite. SECONDS alone may miss some logs, but SECONDS + 1 is just as often too great.
Since unit tests in the CXL suite are using common helpers to start and stop work, initialize and use a "starttime" variable with millisecond granularity for journalctl. Signed-off-by: Alison Schofield <[email protected]> --- test/common | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/common b/test/common index c20b7e48c2b6..93a280c7c150 100644 --- a/test/common +++ b/test/common @@ -156,7 +156,7 @@ check_dmesg() cxl_check_dmesg() { sleep 1 - log=$(journalctl -r -k --since "-$((SECONDS+1))s") + log=$(journalctl -r -k --since "$starttime") # validate no WARN or lockdep report during the run grep -q "Call Trace" <<< "$log" && err "$1" # validate no failures of the interleave calc dev_dbg() check @@ -175,6 +175,7 @@ cxl_common_start() check_prereq "dd" check_prereq "sha256sum" modprobe -r cxl_test + starttime=$(date +"%T.%3N") modprobe cxl_test "$1" rc=1 } -- 2.37.3
