2022-06-09 11:40:45

by Marco Elver

[permalink] [raw]
Subject: [PATCH 2/8] perf/hw_breakpoint: Mark data __ro_after_init

Mark read-only data after initialization as __ro_after_init.

While we are here, turn 'constraints_initialized' into a bool.

Signed-off-by: Marco Elver <[email protected]>
---
kernel/events/hw_breakpoint.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/kernel/events/hw_breakpoint.c b/kernel/events/hw_breakpoint.c
index 25c94c6e918d..1f718745d569 100644
--- a/kernel/events/hw_breakpoint.c
+++ b/kernel/events/hw_breakpoint.c
@@ -47,7 +47,7 @@ struct bp_cpuinfo {
};

static DEFINE_PER_CPU(struct bp_cpuinfo, bp_cpuinfo[TYPE_MAX]);
-static int nr_slots[TYPE_MAX];
+static int nr_slots[TYPE_MAX] __ro_after_init;

static struct bp_cpuinfo *get_bp_info(int cpu, enum bp_type_idx type)
{
@@ -63,7 +63,7 @@ static const struct rhashtable_params task_bps_ht_params = {
.automatic_shrinking = true,
};

-static int constraints_initialized;
+static bool constraints_initialized __ro_after_init;

/* Gather the number of total pinned and un-pinned bp in a cpuset */
struct bp_busy_slots {
@@ -711,7 +711,7 @@ int __init init_hw_breakpoint(void)
if (ret)
goto err;

- constraints_initialized = 1;
+ constraints_initialized = true;

perf_pmu_register(&perf_breakpoint, "breakpoint", PERF_TYPE_BREAKPOINT);

--
2.36.1.255.ge46751e96f-goog


2022-06-09 12:15:43

by Dmitry Vyukov

[permalink] [raw]
Subject: Re: [PATCH 2/8] perf/hw_breakpoint: Mark data __ro_after_init

On Thu, 9 Jun 2022 at 13:31, Marco Elver <[email protected]> wrote:
>
> Mark read-only data after initialization as __ro_after_init.
>
> While we are here, turn 'constraints_initialized' into a bool.
>
> Signed-off-by: Marco Elver <[email protected]>

Reviewed-by: Dmitry Vyukov <[email protected]>

> ---
> kernel/events/hw_breakpoint.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/kernel/events/hw_breakpoint.c b/kernel/events/hw_breakpoint.c
> index 25c94c6e918d..1f718745d569 100644
> --- a/kernel/events/hw_breakpoint.c
> +++ b/kernel/events/hw_breakpoint.c
> @@ -47,7 +47,7 @@ struct bp_cpuinfo {
> };
>
> static DEFINE_PER_CPU(struct bp_cpuinfo, bp_cpuinfo[TYPE_MAX]);
> -static int nr_slots[TYPE_MAX];
> +static int nr_slots[TYPE_MAX] __ro_after_init;
>
> static struct bp_cpuinfo *get_bp_info(int cpu, enum bp_type_idx type)
> {
> @@ -63,7 +63,7 @@ static const struct rhashtable_params task_bps_ht_params = {
> .automatic_shrinking = true,
> };
>
> -static int constraints_initialized;
> +static bool constraints_initialized __ro_after_init;
>
> /* Gather the number of total pinned and un-pinned bp in a cpuset */
> struct bp_busy_slots {
> @@ -711,7 +711,7 @@ int __init init_hw_breakpoint(void)
> if (ret)
> goto err;
>
> - constraints_initialized = 1;
> + constraints_initialized = true;
>
> perf_pmu_register(&perf_breakpoint, "breakpoint", PERF_TYPE_BREAKPOINT);
>
> --
> 2.36.1.255.ge46751e96f-goog
>