- Mar 27, 2024
-
-
Douglas Raillard authored
FIX Use best effort import when importing recursively all of lisa e.g. to discover deprecated items. This is now necessary since some imports will fail (shims) if the lisa_tests package is not installed.
-
Douglas Raillard authored
FIX Use r-string to preserve escape sequences.
-
Douglas Raillard authored
BREAKING CHANGE Do not initialize holoviews extensions as it is the user's responsability to choose a backend. This may also simplify debugging of initializing issues by getting closer to a standard recommended setup.
-
- Mar 26, 2024
-
-
Douglas Raillard authored
FIX Fix the behavior when windowing is used.
-
Douglas Raillard authored
-
Douglas Raillard authored
-
Douglas Raillard authored
Prepare the plots before Sphinx actually needs them so that: 1. We avoid freezing issues because of multiprocessing fork method employed by Sphinx 2. We can make the plots in parallel, rather than sequentially when processing the analysis doc page.
-
Douglas Raillard authored
BREAKING CHANGE Remove compatibility layer with trappy library. It hasn't been used in years and was fully replaced by TxtTraceParserBase family of classes.
-
Douglas Raillard authored
-
Douglas Raillard authored
Separate each aspect of _TraceView in its own class to make it easier to extend, and move all non-core features from Trace into the appropriate view type.
-
Douglas Raillard authored
FEATURE Allow passing a source event with str values instead of forcing the values to be bytes. Also correctly handle wrong dtypes for the source event lines field so that the meta event is reported as missing, instead of an obscure exception.
-
Douglas Raillard authored
BREAKING CHANGE Raise an exception if clip_window=False is passed to df_window(). This behavior was never really needed and is not possible to support polars LazyFrame since the actual Time values are not known until collect() is called.
-
Douglas Raillard authored
method == 'nearest' cannot be supported easily for polars LazyFrames and was never really needed in the first place, so officially do not support it for polars objects.
-
Douglas Raillard authored
-
Douglas Raillard authored
BREAKING CHANGE Disallow any non-True value for "raw" parameter, as the sanitization is now the responsibility of the parser.
-
Douglas Raillard authored
BREAKING CHANGE Move the sanitization into the parser classes where they actually belong. As a result, remove the sanitization of "print"/"bprint"/"bputs" that turns the str column into bytes, since the values in-kernel are expected to be ASCII-encoded strings.
-
Douglas Raillard authored
* normalize_time
-
Douglas Raillard authored
Delegate it to TraceView(process_df=...)
-
Douglas Raillard authored
FEATURE Support polars.LazyFrame in some functions.
-
Douglas Raillard authored
-
- Mar 25, 2024
-
-
Douglas Raillard authored
BREAKING CHANGE Rename TraceCache into _TraceCache as no value of this type was ever made public. It's a de-facto implementation detail of Trace, so make it private.
-
Douglas Raillard authored
Remove the code that tries to guess the fixed overhead from parquet format per column when computing swap cost: * That simplifies the code * Most serialized data will be LazyFrames in JSON anyway * It's not clear that it leads to actually better decision.
-
Douglas Raillard authored
Prepare the ground for polars counterparts.
-
Douglas Raillard authored
FIX Fix _pandas_find_unique_bool_vector() handling of the first/last row. It was previously discarded (based on "keep" value) since it could not be compared with the previous/next row. This commit fixes that by preserving any row that could not be compared to another row.
-
Douglas Raillard authored
FIX Use appropriate bool type instead of int.
-
Douglas Raillard authored
FEATURE Allow creating a TraceView that shifts all the timestamps by some user-defined amount.
-
Douglas Raillard authored
FEATURE Allow creating a TraceView that applies some arbitrary post-processing on the event dataframes. This provides the basis for creating arbitrary views such as timestamp shifting, or even task-specific view of the trace.
-
Douglas Raillard authored
Allow creating a TraceView that does nothing in particular, so that it can become the main vehicle for various can of processing.
-
Douglas Raillard authored
FIX Restrict the operators considered by exekall to the ones defined in the same package as the modules that exekall is pointed at. Also apply this restriction to inherited methods, so we do not accidentally pull operators from third party library that might use type annotations differently and throw exekall into lengthy computations.
-
Douglas Raillard authored
Test multiple BTF blobs in parallel
-
Douglas Raillard authored
FIX
-
- Mar 21, 2024
-
-
Douglas Raillard authored
FIX Assume the recipe will not work under a cross compilation setup as it is the majority of cases, especially when there is no access to GNU binutils for the target arch (like under Alpine).
-
- Feb 27, 2024
-
-
Deepak Kumar Mishra authored
FIX This is necessary since Linux kernel patch commit d26270061ae6 ("string: Remove strlcpy()") removes strlcpy(). Signed-off-by:
Dietmar Eggemann <dietmar.eggemann@arm.com> ---
-
- Feb 26, 2024
-
-
Douglas Raillard authored
FEATURE Add a context manager that wraps subprocess.CalledProcessError into a custom exception type that adds extra details such as stdout/stderr when printing the exception.
-
- Feb 19, 2024
-
-
Douglas Raillard authored
FIX Remove columns: * common_type * common_flags * common_preempt_count
-
- Feb 15, 2024
-
-
Douglas Raillard authored
FIX Use merge request reference instead of the branch on the fork as the fork might not be accessible (private fork) even if the merge request reference can be fetched.
-
Douglas Raillard authored
FIX Allow branch names like refs/merge-requests/1234/head
-
- Feb 14, 2024
-
-
Douglas Raillard authored
Drop alpine-chroot-install use as it is not well maintained and use the same infrastructure as the kernel module building code.
-
Douglas Raillard authored
FEATURE Switch the parser for trace.dat format to the new trace-dump parser. Also make a number of changes to the parsing infrastructure: * New trace-id parser metadata that is used instead of md5 checksum when available. * Meta events are now tried directly before their source event, so the parser has a chance to handle that directly. This is critical for trace_printk@ performance as the new parser handles it natively. * TraceParserBase subclasses are now used as a context manager when costly operation such as event parsing (always) or metadata querying (only when the result is really needed). This allows the parser to correctly manage its resources, while allowing cheap metadata gathering to happen as part of the constructor if needed. * A number of fixes such as minimzation of parsing attempts if an event is known to not be parseable. * available-events metadata are now cached in the trace cache. * Removed the multiprocessing parsing from lisa.trace.Trace. This is effectively useless with the new parser (which is parallel on its own) and avoids pitfalls of forking Python process (sluggish import time or crashy/illegal libc calls after fork, pick your poison) If need be, the old parser is still available and can be used as: Trace(..., parser=TxtTraceParser.from_dat) However, it is not expected that the old parser has any use beyond some meta events (userspace@...) so if you have problems with the new one, please open a bug report with the trace.dat.
-
Douglas Raillard authored
FEATURE
-