Files
linux/kernel/trace/rv/monitors/wip/wip.h
Gabriele Monaco 3d2bfeeef3 verification/dot2c: Remove superfluous enum assignment and add last comma
The header files generated by dot2c currently create enums for states
and events assigning the first element to 0. This is superfluous as it
happens automatically if no value is specified.
Also it doesn't add a comma to the last enum elements, which slightly
complicates the diff if states or events are added.

Remove the assignment to 0 and add a comma to last elements, this
simplifies the logic for the code generator.

Reviewed-by: Nam Cao <namcao@linutronix.de>
Link: https://lore.kernel.org/r/20251126104241.291258-8-gmonaco@redhat.com
Signed-off-by: Gabriele Monaco <gmonaco@redhat.com>
2026-01-12 07:43:50 +01:00

50 lines
1.1 KiB
C

/* SPDX-License-Identifier: GPL-2.0 */
/*
* Automatically generated C representation of wip automaton
* For further information about this format, see kernel documentation:
* Documentation/trace/rv/deterministic_automata.rst
*/
#define MONITOR_NAME wip
enum states_wip {
preemptive_wip,
non_preemptive_wip,
state_max_wip,
};
#define INVALID_STATE state_max_wip
enum events_wip {
preempt_disable_wip,
preempt_enable_wip,
sched_waking_wip,
event_max_wip,
};
struct automaton_wip {
char *state_names[state_max_wip];
char *event_names[event_max_wip];
unsigned char function[state_max_wip][event_max_wip];
unsigned char initial_state;
bool final_states[state_max_wip];
};
static const struct automaton_wip automaton_wip = {
.state_names = {
"preemptive",
"non_preemptive",
},
.event_names = {
"preempt_disable",
"preempt_enable",
"sched_waking",
},
.function = {
{ non_preemptive_wip, INVALID_STATE, INVALID_STATE },
{ INVALID_STATE, preemptive_wip, non_preemptive_wip },
},
.initial_state = preemptive_wip,
.final_states = { 1, 0 },
};