[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0a41e42243d2c102b159bed4b231f143bda02243.camel@redhat.com>
Date: Wed, 16 Apr 2025 09:32:43 +0200
From: Gabriele Monaco <gmonaco@...hat.com>
To: Nam Cao <namcao@...utronix.de>, Steven Rostedt <rostedt@...dmis.org>,
linux-trace-kernel@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: john.ogness@...utronix.de
Subject: Re: [PATCH v3 14/22] rv: Add rtapp container monitor
On Wed, 2025-04-16 at 08:51 +0200, Nam Cao wrote:
> Add the container "rtapp" which is the monitor collection for
> detecting
> problems with real-time applications. The monitors will be added in
> the
> follow-up commits.
>
> Signed-off-by: Nam Cao <namcao@...utronix.de>
> ---
> kernel/trace/rv/Kconfig | 1 +
> kernel/trace/rv/Makefile | 1 +
> kernel/trace/rv/monitors/rtapp/Kconfig | 6 +++++
> kernel/trace/rv/monitors/rtapp/rtapp.c | 34
> ++++++++++++++++++++++++++
> kernel/trace/rv/monitors/rtapp/rtapp.h | 3 +++
> 5 files changed, 45 insertions(+)
> create mode 100644 kernel/trace/rv/monitors/rtapp/Kconfig
> create mode 100644 kernel/trace/rv/monitors/rtapp/rtapp.c
> create mode 100644 kernel/trace/rv/monitors/rtapp/rtapp.h
>
> diff --git a/kernel/trace/rv/Kconfig b/kernel/trace/rv/Kconfig
> index 6e157f964991..5c407d291661 100644
> --- a/kernel/trace/rv/Kconfig
> +++ b/kernel/trace/rv/Kconfig
> @@ -41,6 +41,7 @@ source "kernel/trace/rv/monitors/snroc/Kconfig"
> source "kernel/trace/rv/monitors/scpd/Kconfig"
> source "kernel/trace/rv/monitors/snep/Kconfig"
> source "kernel/trace/rv/monitors/sncid/Kconfig"
> +source "kernel/trace/rv/monitors/rtapp/Kconfig"
> # Add new monitors here
>
> config RV_REACTORS
> diff --git a/kernel/trace/rv/Makefile b/kernel/trace/rv/Makefile
> index f9b2cd0483c3..9b28c2419995 100644
> --- a/kernel/trace/rv/Makefile
> +++ b/kernel/trace/rv/Makefile
> @@ -12,6 +12,7 @@ obj-$(CONFIG_RV_MON_SNROC) +=
> monitors/snroc/snroc.o
> obj-$(CONFIG_RV_MON_SCPD) += monitors/scpd/scpd.o
> obj-$(CONFIG_RV_MON_SNEP) += monitors/snep/snep.o
> obj-$(CONFIG_RV_MON_SNCID) += monitors/sncid/sncid.o
> +obj-$(CONFIG_RV_MON_RTAPP) += monitors/rtapp/rtapp.o
> # Add new monitors here
> obj-$(CONFIG_RV_REACTORS) += rv_reactors.o
> obj-$(CONFIG_RV_REACT_PRINTK) += reactor_printk.o
> diff --git a/kernel/trace/rv/monitors/rtapp/Kconfig
> b/kernel/trace/rv/monitors/rtapp/Kconfig
> new file mode 100644
> index 000000000000..94689d66a79c
> --- /dev/null
> +++ b/kernel/trace/rv/monitors/rtapp/Kconfig
> @@ -0,0 +1,6 @@
> +config RV_MON_RTAPP
> + depends on RV
depends on RV_PER_TASK_MONITORS >= 2
Not sure we want to be that picky, but what about making sure we can
run the monitor in its entirety?
Ignore this if your use case doesn't expect both monitors to be run
together.
Other than that
Reviewed-by: Gabriele Monaco <gmonaco@...hat.com>
Thanks,
Gabriele
> + bool "rtapp monitor"
> + help
> + Collection of monitors to check for common problems with
> real-time application that cause
> + unexpected latency.
> diff --git a/kernel/trace/rv/monitors/rtapp/rtapp.c
> b/kernel/trace/rv/monitors/rtapp/rtapp.c
> new file mode 100644
> index 000000000000..193c9d8dc0af
> --- /dev/null
> +++ b/kernel/trace/rv/monitors/rtapp/rtapp.c
> @@ -0,0 +1,34 @@
> +// SPDX-License-Identifier: GPL-2.0
> +#include <linux/kernel.h>
> +#include <linux/module.h>
> +#include <linux/init.h>
> +#include <linux/rv.h>
> +
> +#define MODULE_NAME "rtapp"
> +
> +#include "rtapp.h"
> +
> +struct rv_monitor rv_rtapp;
> +
> +struct rv_monitor rv_rtapp = {
> + .name = "rtapp",
> + .description = "Collection of monitors for detecting
> problems with real-time applications",
> +};
> +
> +static int __init register_rtapp(void)
> +{
> + rv_register_monitor(&rv_rtapp, NULL);
> + return 0;
> +}
> +
> +static void __exit unregister_rtapp(void)
> +{
> + rv_unregister_monitor(&rv_rtapp);
> +}
> +
> +module_init(register_rtapp);
> +module_exit(unregister_rtapp);
> +
> +MODULE_LICENSE("GPL");
> +MODULE_AUTHOR("Nam Cao <namcao@...utronix.de>");
> +MODULE_DESCRIPTION("Collection of monitors for detecting problems
> with real-time applications");
> diff --git a/kernel/trace/rv/monitors/rtapp/rtapp.h
> b/kernel/trace/rv/monitors/rtapp/rtapp.h
> new file mode 100644
> index 000000000000..4c200d67c7f6
> --- /dev/null
> +++ b/kernel/trace/rv/monitors/rtapp/rtapp.h
> @@ -0,0 +1,3 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +
> +extern struct rv_monitor rv_rtapp;
Powered by blists - more mailing lists