Re: [PATCH v2] watchdog: Add tracing events for the most usual watchdog events

From: Steven Rostedt
Date: Tue Oct 04 2022 - 18:51:53 EST


On Tue, 4 Oct 2022 11:19:49 +0200
Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> wrote:

> +DEFINE_EVENT(watchdog_template, watchdog_start,
> + TP_PROTO(struct watchdog_device *wdd, int err),
> + TP_ARGS(wdd, err));
> +
> +TRACE_EVENT(watchdog_set_timeout,
> +
> + TP_PROTO(struct watchdog_device *wdd, unsigned int timeout, int err),
> +
> + TP_ARGS(wdd, timeout, err),
> +
> + TP_STRUCT__entry(
> + __field(int, id)
> + __field(unsigned int, timeout)
> + __field(int, err)
> + ),
> +
> + TP_fast_assign(
> + __entry->id = wdd->id;
> + __entry->timeout = timeout;
> + __entry->err = err;
> + ),
> +
> + TP_printk("watchdog%d timeout=%u err=%d", __entry->id, __entry->timeout, __entry->err)
> +);

Nit, but I would probably put the above TRACE_EVENT() below the two
DEFINE_EVENT()s below. That way we have all the DEFINE_EVENT()s for a
specific DECLARE_EVENT_CLASS() together. Otherwise people may get confused.

-- Steve



> +
> +DEFINE_EVENT(watchdog_template, watchdog_ping,
> + TP_PROTO(struct watchdog_device *wdd, int err),
> + TP_ARGS(wdd, err));
> +
> +DEFINE_EVENT(watchdog_template, watchdog_stop,
> + TP_PROTO(struct watchdog_device *wdd, int err),
> + TP_ARGS(wdd, err));
> +
> +#endif /* !defined(_TRACE_WATCHDOG_H) || defined(TRACE_HEADER_MULTI_READ) */
> +