public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Moger, Babu" <babu.moger@amd.com>
To: James Morse <james.morse@arm.com>,
	x86@kernel.org, linux-kernel@vger.kernel.org,
	Reinette Chatre <reinette.chatre@intel.com>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	H Peter Anvin <hpa@zytor.com>,
	shameerali.kolothum.thodi@huawei.com,
	D Scott Phillips OS <scott@os.amperecomputing.com>,
	carl@os.amperecomputing.com, lcherian@marvell.com,
	bobo.shaobowang@huawei.com, tan.shaopeng@fujitsu.com,
	baolin.wang@linux.alibaba.com,
	Jamie Iles <quic_jiles@quicinc.com>,
	Xin Hao <xhao@linux.alibaba.com>,
	peternewman@google.com, dfustini@baylibre.com,
	amitsinght@marvell.com, David Hildenbrand <david@redhat.com>,
	Rex Nie <rex.nie@jaguarmicro.com>,
	Dave Martin <dave.martin@arm.com>, Koba Ko <kobak@nvidia.com>,
	Shanker Donthineni <sdonthineni@nvidia.com>,
	fenghuay@nvidia.com
Subject: Re: [PATCH v9 00/27] x86/resctrl: Move the resctrl filesystem code to /fs/resctrl
Date: Fri, 2 May 2025 11:04:42 -0500	[thread overview]
Message-ID: <76b16ef7-2f37-4c30-97af-1d372b7fb251@amd.com> (raw)
In-Reply-To: <20250425173809.5529-1-james.morse@arm.com>

Hi James, Reinette,


On 4/25/25 12:37, James Morse wrote:
> Changes since v8:
>  * Added check for closid_init() on monitor only platforms.
>  * Moved end-marker into array and added default cases.
>  * Additional patches to move prototpyes between header files.
>  
> Changes otherwise noted on each patch.
> 
> ---
> 
> Patches 20-26 should be squashed together when merged, taking the commit message
> of patch 21. They are posted like this to allow folk to re-generate patch 21, then
> review the differences on top. Not squashing them together would expose a ftrace
> build warning during bisect. (but who does that!)
> That would look like this:
> git://git.kernel.org/pub/scm/linux/kernel/git/morse/linux.git mpam/move_to_fs/v9_final
> 
> This series is based on rc3, and can be retrieved from:
> git://git.kernel.org/pub/scm/linux/kernel/git/morse/linux.git mpam/move_to_fs/v9
> 
> This series renames functions and moves code around. With the
> exception of invalid configurations for the configurable-events, there should
> be no changes in behaviour caused by this series. It is now possible for
> throttle_mode to report 'undefined', but no known platform will do this.
> 
> The driving pattern is to make things like struct rdtgroup private to resctrl.
> Features like pseudo-lock aren't going to work on arm64, the ability to disable
> it at compile time is added.
> 
> After this, I can start posting the MPAM driver to make use of resctrl on arm64.
> (What's MPAM? See the cover letter of the first series. [1])
> 
> As ever - bugs welcome,
> Thanks,
> 
> James
> 
> [v8] https://lore.kernel.org/all/20250411164229.23413-1-james.morse@arm.com
> [v7] https://lore.kernel.org/all/20250228195913.24895-1-james.morse@arm.com/
> [v6] https://lore.kernel.org/lkml/20250207181823.6378-1-james.morse@arm.com/
> [v5] https://lore.kernel.org/r/20241004180347.19985-1-james.morse@arm.com
> [v4] https://lore.kernel.org/all/20240802172853.22529-1-james.morse@arm.com/
> [v3] https://lore.kernel.org/r/20240614150033.10454-1-james.morse@arm.com
> [v2] https://lore.kernel.org/r/20240426150537.8094-1-Dave.Martin@arm.com
> [v1] https://lore.kernel.org/r/20240321165106.31602-1-james.morse@arm.com
> [1] https://lore.kernel.org/lkml/20201030161120.227225-1-james.morse@arm.com/
> 
> 
> 
> Amit Singh Tomar (1):
>   x86/resctrl: Remove the limit on the number of CLOSID
> 
> Dave Martin (3):
>   x86/resctrl: Squelch whitespace anomalies in resctrl core code
>   x86/resctrl: Prefer alloc(sizeof(*foo)) idiom in rdt_init_fs_context()
>   x86/resctrl: Relax some asm #includes
> 
> James Morse (23):
>   x86/resctrl: Rename resctrl_sched_in() to begin with "resctrl_arch_"
>   x86/resctrl: Check all domains are offline in resctrl_exit()
>   x86/resctrl: resctrl_exit() teardown resctrl but leave the mount point
>   x86/resctrl: Drop __init/__exit on assorted symbols
>   x86/resctrl: Move is_mba_sc() out of core.c
>   x86/resctrl: Add end-marker to the resctrl_event_id enum
>   x86/resctrl: Expand the width of domid by replacing mon_data_bits
>   x86/resctrl: Split trace.h
>   x86/resctrl: Add 'resctrl' to the title of the resctrl documentation
>   fs/resctrl: Add boiler plate for external resctrl code
>   x86/resctrl: Move the filesystem bits to headers visible to fs/resctrl
>   x86/resctrl: Move enum resctrl_event_id to resctrl.h
>   x86/resctrl: Fix types in resctrl_arch_mon_ctx_alloc() and free stubs
>   x86/resctrl: Move pseudo lock prototypes to include/linux/resctrl.h
>   x86/resctrl: Always initialise rid field in rdt_resources_all[]
>   x86/resctrl: Remove a newline to avoid confusing the code move script
>   x86/resctrl: Add python script to move resctrl code to /fs/resctrl
>   x86,fs/resctrl: Move the resctrl filesystem code to live in
>     /fs/resctrl
>   x86,fs/resctrl: Remove duplicated trace header files
>   fs/resctrl: Remove unnecessary includes
>   fs/resctrl: Change internal.h's header guard macros
>   x86,fs/resctrl: Move resctrl.rst to live under
>     Documentation/filesystems
>   MAINTAINERS: Add reviewers for fs/resctrl
> 
>  Documentation/arch/x86/index.rst              |    1 -
>  Documentation/filesystems/index.rst           |    1 +
>  .../{arch/x86 => filesystems}/resctrl.rst     |    6 +-
>  MAINTAINERS                                   |    5 +-
>  arch/Kconfig                                  |    8 +
>  arch/x86/Kconfig                              |   11 +-
>  arch/x86/include/asm/resctrl.h                |   15 +-
>  arch/x86/kernel/cpu/resctrl/Makefile          |    2 +
>  arch/x86/kernel/cpu/resctrl/core.c            |   31 +-
>  arch/x86/kernel/cpu/resctrl/ctrlmondata.c     |  635 ---
>  arch/x86/kernel/cpu/resctrl/internal.h        |  399 +-
>  arch/x86/kernel/cpu/resctrl/monitor.c         |  918 +---
>  arch/x86/kernel/cpu/resctrl/pseudo_lock.c     | 1092 +----
>  .../resctrl/{trace.h => pseudo_lock_trace.h}  |   26 +-
>  arch/x86/kernel/cpu/resctrl/rdtgroup.c        | 4164 +---------------
>  arch/x86/kernel/process_32.c                  |    2 +-
>  arch/x86/kernel/process_64.c                  |    2 +-
>  fs/Kconfig                                    |    1 +
>  fs/Makefile                                   |    1 +
>  fs/resctrl/Kconfig                            |   39 +
>  fs/resctrl/Makefile                           |    6 +
>  fs/resctrl/ctrlmondata.c                      |  660 +++
>  fs/resctrl/internal.h                         |  440 ++
>  fs/resctrl/monitor.c                          |  929 ++++
>  fs/resctrl/monitor_trace.h                    |   33 +
>  fs/resctrl/pseudo_lock.c                      | 1105 +++++
>  fs/resctrl/rdtgroup.c                         | 4344 +++++++++++++++++
>  include/linux/resctrl.h                       |   36 +-
>  include/linux/resctrl_types.h                 |   16 +-
>  resctrl_copy_pasta.py                         |  823 ++++
>  30 files changed, 8490 insertions(+), 7261 deletions(-)
>  rename Documentation/{arch/x86 => filesystems}/resctrl.rst (99%)
>  rename arch/x86/kernel/cpu/resctrl/{trace.h => pseudo_lock_trace.h} (56%)
>  create mode 100644 fs/resctrl/Kconfig
>  create mode 100644 fs/resctrl/Makefile
>  create mode 100644 fs/resctrl/ctrlmondata.c
>  create mode 100644 fs/resctrl/internal.h
>  create mode 100644 fs/resctrl/monitor.c
>  create mode 100644 fs/resctrl/monitor_trace.h
>  create mode 100644 fs/resctrl/pseudo_lock.c
>  create mode 100644 fs/resctrl/rdtgroup.c
>  create mode 100644 resctrl_copy_pasta.py
> 

I retested the patches on a couple of AMD systems, and everything looks good.

Tested-by: Babu Moger babu.moger@amd.com

It's very likely that these patches will be merged before my ABMC series [1].

I'm currently working on v13 of the ABMC series and considering rebasing
it on top of James' v9. That could potentially eliminate one review cycle
during the merge process.

What are your thoughts on this approach?

1. https://lore.kernel.org/lkml/cover.1743725907.git.babu.moger@amd.com/
-- 
Thanks
Babu Moger

  parent reply	other threads:[~2025-05-02 16:04 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-25 17:37 [PATCH v9 00/27] x86/resctrl: Move the resctrl filesystem code to /fs/resctrl James Morse
2025-04-25 17:37 ` [PATCH v9 01/27] x86/resctrl: Remove the limit on the number of CLOSID James Morse
2025-04-25 17:37 ` [PATCH v9 02/27] x86/resctrl: Rename resctrl_sched_in() to begin with "resctrl_arch_" James Morse
2025-04-25 17:37 ` [PATCH v9 03/27] x86/resctrl: Check all domains are offline in resctrl_exit() James Morse
2025-05-01 17:02   ` Reinette Chatre
2025-04-25 17:37 ` [PATCH v9 04/27] x86/resctrl: resctrl_exit() teardown resctrl but leave the mount point James Morse
2025-05-01 17:03   ` Reinette Chatre
2025-05-07 16:48     ` James Morse
2025-05-07 17:23       ` Reinette Chatre
2025-04-25 17:37 ` [PATCH v9 05/27] x86/resctrl: Drop __init/__exit on assorted symbols James Morse
2025-04-25 17:37 ` [PATCH v9 06/27] x86/resctrl: Move is_mba_sc() out of core.c James Morse
2025-04-25 17:37 ` [PATCH v9 07/27] x86/resctrl: Add end-marker to the resctrl_event_id enum James Morse
2025-05-01 17:03   ` Reinette Chatre
2025-04-25 17:37 ` [PATCH v9 08/27] x86/resctrl: Expand the width of domid by replacing mon_data_bits James Morse
2025-05-01 17:04   ` Reinette Chatre
2025-05-07 16:48     ` James Morse
2025-04-25 17:37 ` [PATCH v9 09/27] x86/resctrl: Split trace.h James Morse
2025-04-25 17:37 ` [PATCH v9 10/27] x86/resctrl: Add 'resctrl' to the title of the resctrl documentation James Morse
2025-05-01 17:07   ` Reinette Chatre
2025-05-01 21:17   ` Fenghua Yu
2025-04-25 17:37 ` [PATCH v9 11/27] fs/resctrl: Add boiler plate for external resctrl code James Morse
2025-04-25 17:37 ` [PATCH v9 12/27] x86/resctrl: Move the filesystem bits to headers visible to fs/resctrl James Morse
2025-04-25 17:37 ` [PATCH v9 13/27] x86/resctrl: Move enum resctrl_event_id to resctrl.h James Morse
2025-05-01 17:19   ` Reinette Chatre
2025-05-07 16:48     ` James Morse
2025-04-25 17:37 ` [PATCH v9 14/27] x86/resctrl: Fix types in resctrl_arch_mon_ctx_alloc() and free stubs James Morse
2025-05-01 17:27   ` Reinette Chatre
2025-05-07 16:48     ` James Morse
2025-04-25 17:37 ` [PATCH v9 15/27] x86/resctrl: Move pseudo lock prototypes to include/linux/resctrl.h James Morse
2025-05-01 17:29   ` Reinette Chatre
2025-04-25 17:37 ` [PATCH v9 16/27] x86/resctrl: Squelch whitespace anomalies in resctrl core code James Morse
2025-04-25 17:37 ` [PATCH v9 17/27] x86/resctrl: Prefer alloc(sizeof(*foo)) idiom in rdt_init_fs_context() James Morse
2025-04-25 17:38 ` [PATCH v9 18/27] x86/resctrl: Relax some asm #includes James Morse
2025-04-25 17:38 ` [PATCH v9 19/27] x86/resctrl: Always initialise rid field in rdt_resources_all[] James Morse
2025-05-01 17:31   ` Reinette Chatre
2025-04-25 17:38 ` [PATCH v9 20/27] x86/resctrl: Remove a newline to avoid confusing the code move script James Morse
2025-04-25 17:38 ` [PATCH v9 21/27] x86/resctrl: Add python script to move resctrl code to /fs/resctrl James Morse
2025-04-25 17:38 ` [PATCH v9 22/27] x86,fs/resctrl: Move the resctrl filesystem code to live in /fs/resctrl James Morse
2025-04-25 17:38 ` [PATCH v9 23/27] x86,fs/resctrl: Remove duplicated trace header files James Morse
2025-05-01 17:34   ` Reinette Chatre
2025-04-25 17:38 ` [PATCH v9 24/27] fs/resctrl: Remove unnecessary includes James Morse
2025-05-01 17:34   ` Reinette Chatre
2025-05-01 22:27   ` Fenghua Yu
2025-04-25 17:38 ` [PATCH v9 25/27] fs/resctrl: Change internal.h's header guard macros James Morse
2025-05-01 17:35   ` Reinette Chatre
2025-05-01 22:25   ` Fenghua Yu
2025-04-25 17:38 ` [PATCH v9 26/27] x86,fs/resctrl: Move resctrl.rst to live under Documentation/filesystems James Morse
2025-04-25 17:38 ` [PATCH v9 27/27] MAINTAINERS: Add reviewers for fs/resctrl James Morse
2025-04-29 14:25   ` Dave Martin
2025-05-01 17:41   ` Reinette Chatre
2025-05-01 17:51 ` [PATCH v9 00/27] x86/resctrl: Move the resctrl filesystem code to /fs/resctrl Reinette Chatre
2025-05-07 16:49   ` James Morse
2025-05-07 17:25     ` Reinette Chatre
2025-05-02 16:04 ` Moger, Babu [this message]
2025-05-02 16:30   ` Reinette Chatre
2025-05-02 16:45     ` Moger, Babu
2025-05-07 16:49       ` James Morse
2025-05-07 20:27         ` Moger, Babu
2025-05-07 20:36           ` Reinette Chatre
2025-05-07 12:00 ` Shaopeng Tan (Fujitsu)
2025-05-07 16:51   ` James Morse

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=76b16ef7-2f37-4c30-97af-1d372b7fb251@amd.com \
    --to=babu.moger@amd.com \
    --cc=amitsinght@marvell.com \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=bobo.shaobowang@huawei.com \
    --cc=bp@alien8.de \
    --cc=carl@os.amperecomputing.com \
    --cc=dave.martin@arm.com \
    --cc=david@redhat.com \
    --cc=dfustini@baylibre.com \
    --cc=fenghuay@nvidia.com \
    --cc=hpa@zytor.com \
    --cc=james.morse@arm.com \
    --cc=kobak@nvidia.com \
    --cc=lcherian@marvell.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=peternewman@google.com \
    --cc=quic_jiles@quicinc.com \
    --cc=reinette.chatre@intel.com \
    --cc=rex.nie@jaguarmicro.com \
    --cc=scott@os.amperecomputing.com \
    --cc=sdonthineni@nvidia.com \
    --cc=shameerali.kolothum.thodi@huawei.com \
    --cc=tan.shaopeng@fujitsu.com \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    --cc=xhao@linux.alibaba.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox