Re: [PATCH v8 4/8] x86/resctrl: Add comments on RFTYPE flags hierarchy

From: Moger, Babu
Date: Wed Sep 06 2023 - 11:11:13 EST


Hi Fenghua,

On 9/1/2023 5:31 PM, Fenghua Yu wrote:
Hi, Babu,

On 8/21/23 16:30, Babu Moger wrote:
resctrl uses RFTYPE flags for creating resctrl directory structure.

Definitions and directory structures are not documented. Add
comments to improve the readability and help future additions.

Signed-off-by: Babu Moger <babu.moger@xxxxxxx>
---
  arch/x86/kernel/cpu/resctrl/internal.h | 58 ++++++++++++++++++++++++++
  1 file changed, 58 insertions(+)

diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/resctrl/internal.h
index 2051179a3b91..b09e7abd1299 100644
--- a/arch/x86/kernel/cpu/resctrl/internal.h
+++ b/arch/x86/kernel/cpu/resctrl/internal.h
@@ -240,6 +240,64 @@ struct rdtgroup {
    /*
   * Define the file type flags for base and info directories.
+ *
+ * RESCTRL filesystem has two main components
+ *    a. info
+ *    b. base
+ *
+ * /sys/fs/resctrl/
+ *    |
+ *    --> info (Top level directory named "info". Contains files that
+ *    |      provide details on control and monitoring resources.)
+ *    |
+ *    --> base (Root directory associated with default resource group
+ *          as well as directories created by user for MON and CTRL
+ *          groups. Contains files to interact with MON and CTRL
+ *          groups.)
+ *
+ *    Note: resctrl uses flags for files, not for directories.
+ *          Directories are created based on the resource type. Added
+ *          directories below for better understanding.
+ *
+ *    info directory structure
+ * ------------------------------------------------------------------
+ *    --> RFTYPE_INFO
+ *        directory: info
+ *        --> RFTYPE_TOP (Files in top level of info directory)
+ *            File: last_cmd_status
+ *
+ *        --> RFTYPE_MON (Files for all monitoring resources)
+ *            Directory: L3_MON
+ *                Files: mon_features, num_rmids
+ *
+ *            --> RFTYPE_RES_CACHE (Files for cache monitoring resources)
+ *                Directory: L3_MON
+ *                    Files: max_threshold_occupancy,
+ *                           mbm_total_bytes_config,
+ *                           mbm_local_bytes_config
+ *
+ *        --> RFTYPE_CTRL (Files for all control resources)
+ *            Directories: L2, L3, MB, SMBA

L2 CDP and L3 CDP have different dirs. So need to add them here:

 + *            Directories: L2, L3, MB, SMBA, L2CODE, L2DATA, L3CODE, L3DATA (L*CODE and L*DATA only available when CDP is enabled)

Sure.


+ *                   File: num_closids
+ *
+ *            --> RFTYPE_RES_CACHE (Files for cache control resources)
+ *                Directories: L2, L3

> + *                Directories: L2, L3

+ *                Directories: L2, L3, L2CODE, L2DATA, L3CODE, L3DATA

Yes. Sure.

Thank you

Babu