Skip to content

[dvsim] Automatically generating reproduction commands in regression logs #24314

Open

Description

Description

It would be really useful if the failure logs in the regression dashboards (e.g. https://reports.opentitan.org/hw/ip/rv_timer/dv/latest/report.html) could have a button for copying the dvsim command that reproduces the failure.

Example

For example, in that link, the failure message looks like this:

Log message (expand)

24-08-14_14:37:23

and there's some useful information about the run at the top:

Run information (expand)

24-08-14_14:37:03

You can put these details (plus the HJSON file path) together to rebuild the reproducing dvsim command:

git checkout 098010d125
./util/dvsim/dvsim.py \
    hw/ip/rv_dm/dv/rv_dm_sim_cfg.hjson \
    -i rv_timer_stress_all_with_rand_reset \
    --build-seed 12185085088694708177096441863424670920996379189869351644310607217057882846251 \
    --fixed-seed 2140657422388640192039514280169005108423428466594496183724248505193825521374

At lowRISC we triage regressions and often have to create these reproduction commands. It would be really useful if the dashboard could build it automatically for us to copy-paste. This would save a lot of busy-work.

Extra - access to full logs

As an aside, most of the time we have to reproduce these failures because the logs in the dashboard don't contain enough information. It would be useful to have access to the full logs from dvsim generated during the regression runs even if they have to be access controlled. If they already exist, they should be linked to from the dashboard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    Tool:dvsimPertains to the dvsim and testplan toolsPertains to the dvsim and testplan toolsType:EnhancementFeature requests, enhancementsFeature requests, enhancements

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions