Documentation/trace/rv/da_monitor_synthesis.rst | 147 ------ Documentation/trace/rv/index.rst | 3 +- Documentation/trace/rv/linear_temporal_logic.rst | 134 +++++ Documentation/trace/rv/monitor_synthesis.rst | 271 ++++++++++ include/linux/rv.h | 8 + include/rv/ltl_monitor.h | 4 +- kernel/panic.c | 2 +- kernel/trace/rv/Kconfig | 5 + kernel/trace/rv/monitors/sched/sched.c | 3 +- kernel/trace/rv/monitors/sco/sco.c | 3 +- kernel/trace/rv/monitors/scpd/scpd.c | 3 +- kernel/trace/rv/monitors/sncid/sncid.c | 3 +- kernel/trace/rv/monitors/snep/snep.c | 3 +- kernel/trace/rv/monitors/snep/snep.h | 14 +- kernel/trace/rv/monitors/snroc/snroc.c | 3 +- kernel/trace/rv/monitors/tss/tss.c | 3 +- kernel/trace/rv/monitors/wip/wip.c | 3 +- kernel/trace/rv/monitors/wwnr/wwnr.c | 3 +- kernel/trace/rv/rv.c | 210 ++++---- kernel/trace/rv/rv.h | 39 +- kernel/trace/rv/rv_reactors.c | 136 ++--- tools/objtool/noreturns.h | 1 + tools/verification/dot2/Makefile | 26 - tools/verification/dot2/dot2k | 53 -- tools/verification/rv/src/in_kernel.c | 4 +- tools/verification/rv/src/rv.c | 1 + tools/verification/rvgen/.gitignore | 3 + tools/verification/rvgen/Makefile | 27 + tools/verification/rvgen/__main__.py | 67 +++ tools/verification/{dot2 => rvgen}/dot2c | 2 +- .../verification/{dot2 => rvgen/rvgen}/automata.py | 0 tools/verification/rvgen/rvgen/container.py | 32 ++ tools/verification/{dot2 => rvgen/rvgen}/dot2c.py | 22 +- tools/verification/rvgen/rvgen/dot2k.py | 129 +++++ .../{dot2/dot2k.py => rvgen/rvgen/generator.py} | 265 +++------- tools/verification/rvgen/rvgen/ltl2ba.py | 566 +++++++++++++++++++++ tools/verification/rvgen/rvgen/ltl2k.py | 271 ++++++++++ .../rvgen/templates}/Kconfig | 0 .../rvgen/rvgen/templates/container/Kconfig | 5 + .../rvgen/templates/container/main.c} | 3 +- .../rvgen/templates/container/main.h} | 0 .../rvgen/templates/dot2k}/main.c | 3 +- .../rvgen/templates/dot2k}/trace.h | 0 .../rvgen/rvgen/templates/ltl2k/main.c | 102 ++++ .../rvgen/rvgen/templates/ltl2k/trace.h | 14 + 45 files changed, 1893 insertions(+), 703 deletions(-) delete mode 100644 Documentation/trace/rv/da_monitor_synthesis.rst create mode 100644 Documentation/trace/rv/linear_temporal_logic.rst create mode 100644 Documentation/trace/rv/monitor_synthesis.rst delete mode 100644 tools/verification/dot2/Makefile delete mode 100644 tools/verification/dot2/dot2k create mode 100644 tools/verification/rvgen/.gitignore create mode 100644 tools/verification/rvgen/Makefile create mode 100644 tools/verification/rvgen/__main__.py rename tools/verification/{dot2 => rvgen}/dot2c (97%) rename tools/verification/{dot2 => rvgen/rvgen}/automata.py (100%) create mode 100644 tools/verification/rvgen/rvgen/container.py rename tools/verification/{dot2 => rvgen/rvgen}/dot2c.py (92%) create mode 100644 tools/verification/rvgen/rvgen/dot2k.py rename tools/verification/{dot2/dot2k.py => rvgen/rvgen/generator.py} (51%) create mode 100644 tools/verification/rvgen/rvgen/ltl2ba.py create mode 100644 tools/verification/rvgen/rvgen/ltl2k.py rename tools/verification/{dot2/dot2k_templates => rvgen/rvgen/templates}/Kconfig (100%) create mode 100644 tools/verification/rvgen/rvgen/templates/container/Kconfig rename tools/verification/{dot2/dot2k_templates/main_container.c => rvgen/rvgen/templates/container/main.c} (92%) rename tools/verification/{dot2/dot2k_templates/main_container.h => rvgen/rvgen/templates/container/main.h} (100%) rename tools/verification/{dot2/dot2k_templates => rvgen/rvgen/templates/dot2k}/main.c (96%) rename tools/verification/{dot2/dot2k_templates => rvgen/rvgen/templates/dot2k}/trace.h (100%) create mode 100644 tools/verification/rvgen/rvgen/templates/ltl2k/main.c create mode 100644 tools/verification/rvgen/rvgen/templates/ltl2k/trace.h