[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 3/9] tests/avocado: excercise scripts/replay-dump.py in re
From: |
Nicholas Piggin |
Subject: |
Re: [PATCH v3 3/9] tests/avocado: excercise scripts/replay-dump.py in replay tests |
Date: |
Thu, 29 Feb 2024 13:10:49 +1000 |
On Wed Feb 28, 2024 at 5:21 AM AEST, Alex Bennée wrote:
> Nicholas Piggin <npiggin@gmail.com> writes:
>
> > This runs replay-dump.py after recording a trace, and fails the test if
> > the script fails.
> >
> > replay-dump.py is modified to exit with non-zero if an error is
> > encountered while parsing, to support this.
> >
> > Reviewed-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
> > Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
> > ---
> > scripts/replay-dump.py | 6 ++++--
> > tests/avocado/replay_kernel.py | 16 ++++++++++++++++
> > tests/avocado/replay_linux.py | 15 +++++++++++++++
> > 3 files changed, 35 insertions(+), 2 deletions(-)
> >
> > diff --git a/scripts/replay-dump.py b/scripts/replay-dump.py
> > index b82659cfb6..4ce7ff51cc 100755
> > --- a/scripts/replay-dump.py
> > +++ b/scripts/replay-dump.py
> > @@ -21,6 +21,7 @@
> > import argparse
> > import struct
> > import os
> > +import sys
> > from collections import namedtuple
> > from os import path
> >
> > @@ -100,7 +101,7 @@ def call_decode(table, index, dumpfile):
> > print("Could not decode index: %d" % (index))
> > print("Entry is: %s" % (decoder))
> > print("Decode Table is:\n%s" % (table))
> > - return False
> > + raise(Exception("unknown event"))
> > else:
> > return decoder.fn(decoder.eid, decoder.name, dumpfile)
> >
> > @@ -121,7 +122,7 @@ def print_event(eid, name, string=None,
> > event_count=None):
> > def decode_unimp(eid, name, _unused_dumpfile):
> > "Unimplemented decoder, will trigger exit"
> > print("%s not handled - will now stop" % (name))
> > - return False
> > + raise(Exception("unhandled event"))
> >
> > def decode_plain(eid, name, _unused_dumpfile):
> > "Plain events without additional data"
> > @@ -434,6 +435,7 @@ def decode_file(filename):
> > dumpfile)
> > except Exception as inst:
> > print(f"error {inst}")
> > + sys.exit(1)
> >
> > finally:
> > print(f"Reached {dumpfile.tell()} of {dumpsize} bytes")
> > diff --git a/tests/avocado/replay_kernel.py b/tests/avocado/replay_kernel.py
> > index 10d99403a4..9b3ee6726b 100644
> > --- a/tests/avocado/replay_kernel.py
> > +++ b/tests/avocado/replay_kernel.py
> > @@ -13,6 +13,7 @@
> > import shutil
> > import logging
> > import time
> > +import subprocess
> >
> > from avocado import skip
> > from avocado import skipUnless
> > @@ -22,6 +23,11 @@
> > from avocado.utils import process
> > from boot_linux_console import LinuxKernelTest
> >
> > +from pathlib import Path
> > +
> > +self_dir = Path(__file__).parent
> > +src_dir = self_dir.parent.parent
> > +
>
> Whats this for? It doesn't seem to be used.
Thanks for finding it, must be just a leftover from some earlier hack.
I'll take it out.
Thanks,
Nick
- [PATCH v3 0/9] replay: fixes and new test cases, Nicholas Piggin, 2024/02/26
- [PATCH v3 1/9] scripts/replay-dump.py: Update to current rr record format, Nicholas Piggin, 2024/02/26
- [PATCH v3 2/9] scripts/replay-dump.py: rejig decoders in event number order, Nicholas Piggin, 2024/02/26
- [PATCH v3 3/9] tests/avocado: excercise scripts/replay-dump.py in replay tests, Nicholas Piggin, 2024/02/26
- [PATCH v3 4/9] replay: allow runstate shutdown->running when replaying trace, Nicholas Piggin, 2024/02/26
- [PATCH v3 5/9] Revert "replay: stop us hanging in rr_wait_io_event", Nicholas Piggin, 2024/02/26
- [PATCH v3 6/9] chardev: set record/replay on the base device of a muxed device, Nicholas Piggin, 2024/02/26
- [PATCH v3 7/9] replay: Fix migration use of clock, Nicholas Piggin, 2024/02/26
- [PATCH v3 8/9] replay: Fix migration replay_mutex locking, Nicholas Piggin, 2024/02/26
- [PATCH v3 9/9] tests/avocado/reverse_debugging.py: mark aarch64 and pseries as not flaky, Nicholas Piggin, 2024/02/26