x86/resctrl: Merge mon_capable and mon_enabled
authorJames Morse <james.morse@arm.com>
Fri, 2 Sep 2022 15:48:10 +0000 (15:48 +0000)
committerBorislav Petkov <bp@suse.de>
Thu, 22 Sep 2022 12:43:08 +0000 (14:43 +0200)
mon_enabled and mon_capable are always set as a pair by
rdt_get_mon_l3_config().

There is no point having two values.

Merge them together.

Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Jamie Iles <quic_jiles@quicinc.com>
Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com>
Reviewed-by: Reinette Chatre <reinette.chatre@intel.com>
Tested-by: Xin Hao <xhao@linux.alibaba.com>
Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com>
Tested-by: Cristian Marussi <cristian.marussi@arm.com>
Link: https://lore.kernel.org/r/20220902154829.30399-3-james.morse@arm.com
arch/x86/kernel/cpu/resctrl/internal.h
arch/x86/kernel/cpu/resctrl/monitor.c
arch/x86/kernel/cpu/resctrl/rdtgroup.c
include/linux/resctrl.h

index 53f3d275a98f6e48c71525625c2be34e508f173f..8828b5c1b6d2e098d46d22f4fa9d1ae8e51f31c5 100644 (file)
@@ -459,10 +459,6 @@ int resctrl_arch_set_cdp_enabled(enum resctrl_res_level l, bool enable);
        for_each_rdt_resource(r)                                              \
                if (r->mon_capable)
 
-#define for_each_mon_enabled_rdt_resource(r)                                 \
-       for_each_rdt_resource(r)                                              \
-               if (r->mon_enabled)
-
 /* CPUID.(EAX=10H, ECX=ResID=1).EAX */
 union cpuid_0x10_1_eax {
        struct {
index eaf25a234ff5de954bfad39969c88110c59a769d..497cadf3285d478765340e0c76dd79e95e3ce479 100644 (file)
@@ -717,7 +717,6 @@ int rdt_get_mon_l3_config(struct rdt_resource *r)
        l3_mon_evt_init(r);
 
        r->mon_capable = true;
-       r->mon_enabled = true;
 
        return 0;
 }
index 526eb933333b7473071533a4dafeb63ceb30e610..def7c6681f8b3aec967797560dfa06729aa8f0ce 100644 (file)
@@ -1765,7 +1765,7 @@ static int rdtgroup_create_info_dir(struct kernfs_node *parent_kn)
                        goto out_destroy;
        }
 
-       for_each_mon_enabled_rdt_resource(r) {
+       for_each_mon_capable_rdt_resource(r) {
                fflags =  r->fflags | RF_MON_INFO;
                sprintf(name, "%s_MON", r->name);
                ret = rdtgroup_mkdir_info_resdir(r, name, fflags);
@@ -2504,7 +2504,7 @@ void rmdir_mondata_subdir_allrdtgrp(struct rdt_resource *r, unsigned int dom_id)
        struct rdtgroup *prgrp, *crgrp;
        char name[32];
 
-       if (!r->mon_enabled)
+       if (!r->mon_capable)
                return;
 
        list_for_each_entry(prgrp, &rdt_all_groups, rdtgroup_list) {
@@ -2572,7 +2572,7 @@ void mkdir_mondata_subdir_allrdtgrp(struct rdt_resource *r,
        struct rdtgroup *prgrp, *crgrp;
        struct list_head *head;
 
-       if (!r->mon_enabled)
+       if (!r->mon_capable)
                return;
 
        list_for_each_entry(prgrp, &rdt_all_groups, rdtgroup_list) {
@@ -2642,7 +2642,7 @@ static int mkdir_mondata_all(struct kernfs_node *parent_kn,
         * Create the subdirectories for each domain. Note that all events
         * in a domain like L3 are grouped into a resource whose domain is L3
         */
-       for_each_mon_enabled_rdt_resource(r) {
+       for_each_mon_capable_rdt_resource(r) {
                ret = mkdir_mondata_subdir_alldom(kn, r, prgrp);
                if (ret)
                        goto out_destroy;
index 386ab3a41500490ca2e01a04d68f3cd28f9091f2..8180c539800dcf2b9fe5d6f189fefc7bcb32763b 100644 (file)
@@ -130,7 +130,6 @@ struct resctrl_schema;
 /**
  * struct rdt_resource - attributes of a resctrl resource
  * @rid:               The index of the resource
- * @mon_enabled:       Is monitoring enabled for this feature
  * @alloc_capable:     Is allocation available on this machine
  * @mon_capable:       Is monitor feature available on this machine
  * @num_rmid:          Number of RMIDs available
@@ -149,7 +148,6 @@ struct resctrl_schema;
  */
 struct rdt_resource {
        int                     rid;
-       bool                    mon_enabled;
        bool                    alloc_capable;
        bool                    mon_capable;
        int                     num_rmid;