[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7b1452b2-38d7-49e1-bd34-ea61eca01419@intel.com>
Date: Wed, 17 Sep 2025 22:28:00 -0700
From: Reinette Chatre <reinette.chatre@...el.com>
To: Babu Moger <babu.moger@....com>, <corbet@....net>, <tony.luck@...el.com>,
<Dave.Martin@....com>, <james.morse@....com>, <tglx@...utronix.de>,
<mingo@...hat.com>, <bp@...en8.de>, <dave.hansen@...ux.intel.com>
CC: <x86@...nel.org>, <hpa@...or.com>, <kas@...nel.org>,
<rick.p.edgecombe@...el.com>, <akpm@...ux-foundation.org>,
<paulmck@...nel.org>, <pmladek@...e.com>,
<pawan.kumar.gupta@...ux.intel.com>, <rostedt@...dmis.org>,
<kees@...nel.org>, <arnd@...db.de>, <fvdl@...gle.com>, <seanjc@...gle.com>,
<thomas.lendacky@....com>, <manali.shukla@....com>, <perry.yuan@....com>,
<sohil.mehta@...el.com>, <xin@...or.com>, <peterz@...radead.org>,
<mario.limonciello@....com>, <gautham.shenoy@....com>, <nikunj@....com>,
<dapeng1.mi@...ux.intel.com>, <ak@...ux.intel.com>,
<chang.seok.bae@...el.com>, <ebiggers@...gle.com>,
<linux-doc@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linux-coco@...ts.linux.dev>, <kvm@...r.kernel.org>
Subject: Re: [PATCH v9 05/10] fs/resctrl: Introduce interface to display
"io_alloc" support
Hi Babu,
On 9/2/25 3:41 PM, Babu Moger wrote:
> "io_alloc" feature in resctrl allows direct insertion of data from I/O
> devices into the cache.
>
> Introduce the 'io_alloc' resctrl file to indicate the support for the
> feature.
Changelog that aims to address feeback received in ABMC series (avoid repetition
and document any non-obvious things), please feel free to improve:
Introduce the "io_alloc" resctrl file to the "info" area of a cache
resource, for example /sys/fs/resctrl/info/L3/io_alloc. "io_alloc"
indicates support for the "io_alloc" feature that allows direct
insertion of data from I/O devices into the cache.
Restrict exposing support for "io_alloc" to the L3 resource that is the
only resource where this feature can be backed by AMD's L3 Smart Data Cache
Injection Allocation Enforcement (SDCIAE). With that, the "io_alloc" file is only
visible to user space if the L3 resource supports "io_alloc". Doing
so makes the file visible for all cache resources though, for example also L2
cache (if it supports cache allocation). As a consequence, add capability for
file to report expected "enabled" and "disabled", as well as "not supported".
>
> Signed-off-by: Babu Moger <babu.moger@....com>
> ---
...
> ---
> Documentation/filesystems/resctrl.rst | 30 +++++++++++++++++++++++++++
> fs/resctrl/ctrlmondata.c | 21 +++++++++++++++++++
> fs/resctrl/internal.h | 5 +++++
> fs/resctrl/rdtgroup.c | 24 ++++++++++++++++++++-
> 4 files changed, 79 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/filesystems/resctrl.rst b/Documentation/filesystems/resctrl.rst
> index 4866a8a4189f..89aab17b00cb 100644
> --- a/Documentation/filesystems/resctrl.rst
> +++ b/Documentation/filesystems/resctrl.rst
> @@ -136,6 +136,36 @@ related to allocation:
> "1":
> Non-contiguous 1s value in CBM is supported.
>
> +"io_alloc":
> + "io_alloc" enables system software to configure the portion of
> + the cache allocated for I/O traffic. File may only exist if the
> + system supports this feature on some of its cache resources.
> +
> + "disabled":
> + Resource supports "io_alloc" but the feature is disabled.
> + Portions of cache used for allocation of I/O traffic cannot
> + be configured.
> + "enabled":
> + Portions of cache used for allocation of I/O traffic
> + can be configured using "io_alloc_cbm".
> + "not supported":
> + Support not available for this resource.
> +
After trying to rework the changelogs I believe the portion of doc below is better suited for
the next patch that adds support for enable/disable where CLOSIDs are relevant.
> + The underlying implementation may reduce resources available to
> + general (CPU) cache allocation. See architecture specific notes
> + below. Depending on usage requirements the feature can be enabled
> + or disabled.
> +
> + On AMD systems, io_alloc feature is supported by the L3 Smart
> + Data Cache Injection Allocation Enforcement (SDCIAE). The CLOSID for
> + io_alloc is the highest CLOSID supported by the resource. When
> + io_alloc is enabled, the highest CLOSID is dedicated to io_alloc and
> + no longer available for general (CPU) cache allocation. When CDP is
> + enabled, io_alloc routes I/O traffic using the highest CLOSID allocated
> + for the instruction cache (L3CODE), making this CLOSID no longer
> + available for general (CPU) cache allocation for both the L3CODE and
> + L3DATA resources.
> +
> Memory bandwidth(MB) subdirectory contains the following files
> with respect to allocation:
>
Reinette
Powered by blists - more mailing lists