mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "tip-bot2 for Tony Luck" <tip-bot2@linutronix.de>
To: linux-tip-commits@vger.kernel.org
Cc: Reinette Chatre <reinette.chatre@intel.com>,
	Tony Luck <tony.luck@intel.com>,
	"Borislav Petkov (AMD)" <bp@alien8.de>,
	Babu Moger <babu.moger@amd.com>,
	x86@kernel.org, linux-kernel@vger.kernel.org
Subject: [tip: x86/cache] x86/resctrl: Add a new field to struct rmid_read for summation of domains
Date: Tue, 02 Jul 2024 19:24:14 -0000	[thread overview]
Message-ID: <171994825453.2215.4023928263267040624.tip-bot2@tip-bot2> (raw)
In-Reply-To: <20240628215619.76401-10-tony.luck@intel.com>

The following commit has been merged into the x86/cache branch of tip:

Commit-ID:     fb1f51f677585f1b1ba17d2390963bbebe7a8cfa
Gitweb:        https://git.kernel.org/tip/fb1f51f677585f1b1ba17d2390963bbebe7a8cfa
Author:        Tony Luck <tony.luck@intel.com>
AuthorDate:    Fri, 28 Jun 2024 14:56:09 -07:00
Committer:     Borislav Petkov (AMD) <bp@alien8.de>
CommitterDate: Tue, 02 Jul 2024 19:49:54 +02:00

x86/resctrl: Add a new field to struct rmid_read for summation of domains

When a user reads a monitor file rdtgroup_mondata_show() calls mon_event_read()
to package up all the required details into an rmid_read structure which is
passed across the smp_call*() infrastructure to code that will read data from
hardware and return the value (or error status) in the rmid_read structure.

Sub-NUMA Cluster (SNC) mode adds files with new semantics. These require the
smp_call-ed code to sum event data from all domains that share an L3 cache.

Add a pointer to the L3 "cacheinfo" structure to struct rmid_read for the data
collection routines to use to pick the domains to be summed.

  [ Reinette: the rmid_read structure has become complex enough so document each
    of its fields and provide the kerneldoc documentation for struct rmid_read. ]

Co-developed-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Tested-by: Babu Moger <babu.moger@amd.com>
Link: https://lore.kernel.org/r/20240628215619.76401-10-tony.luck@intel.com
---
 arch/x86/kernel/cpu/resctrl/internal.h | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/resctrl/internal.h
index 135190e..681b5bd 100644
--- a/arch/x86/kernel/cpu/resctrl/internal.h
+++ b/arch/x86/kernel/cpu/resctrl/internal.h
@@ -144,12 +144,31 @@ union mon_data_bits {
 	} u;
 };
 
+/**
+ * struct rmid_read - Data passed across smp_call*() to read event count.
+ * @rgrp:  Resource group for which the counter is being read. If it is a parent
+ *	   resource group then its event count is summed with the count from all
+ *	   its child resource groups.
+ * @r:	   Resource describing the properties of the event being read.
+ * @d:	   Domain that the counter should be read from. If NULL then sum all
+ *	   domains in @r sharing L3 @ci.id
+ * @evtid: Which monitor event to read.
+ * @first: Initialize MBM counter when true.
+ * @ci:    Cacheinfo for L3. Only set when @d is NULL. Used when summing domains.
+ * @err:   Error encountered when reading counter.
+ * @val:   Returned value of event counter. If @rgrp is a parent resource group,
+ *	   @val includes the sum of event counts from its child resource groups.
+ *	   If @d is NULL, @val includes the sum of all domains in @r sharing @ci.id,
+ *	   (summed across child resource groups if @rgrp is a parent resource group).
+ * @arch_mon_ctx: Hardware monitor allocated for this read request (MPAM only).
+ */
 struct rmid_read {
 	struct rdtgroup		*rgrp;
 	struct rdt_resource	*r;
 	struct rdt_mon_domain	*d;
 	enum resctrl_event_id	evtid;
 	bool			first;
+	struct cacheinfo	*ci;
 	int			err;
 	u64			val;
 	void			*arch_mon_ctx;

  reply	other threads:[~2024-07-02 19:24 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-28 21:56 [PATCH v23 00/19] Add support for Sub-NUMA cluster (SNC) systems Tony Luck
2024-06-28 21:56 ` [PATCH v23 01/19] x86/resctrl: Prepare for new domain scope Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 02/19] x86/resctrl: Prepare to split rdt_domain structure Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 03/19] x86/resctrl: Prepare for different scope for control/monitor operations Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 04/19] x86/resctrl: Split the rdt_domain and rdt_hw_domain structures Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 05/19] x86/resctrl: Add node-scope to the options for feature scope Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 06/19] x86/resctrl: Introduce snc_nodes_per_l3_cache Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-07-26 19:13   ` [PATCH v23 06/19] " Peter Newman
2024-06-28 21:56 ` [PATCH v23 07/19] x86/resctrl: Block use of mba_MBps mount option on Sub-NUMA Cluster (SNC) systems Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 08/19] x86/resctrl: Prepare for new Sub-NUMA Cluster (SNC) monitor files Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 09/19] x86/resctrl: Add a new field to struct rmid_read for summation of domains Tony Luck
2024-07-02 19:24   ` tip-bot2 for Tony Luck [this message]
2024-06-28 21:56 ` [PATCH v23 10/19] x86/resctrl: Initialize on-stack struct rmid_read instances Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 11/19] x86/resctrl: Refactor mkdir_mondata_subdir() with a helper function Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 12/19] x86/resctrl: Allocate a new field in union mon_data_bits Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 13/19] x86/resctrl: Create Sub-NUMA Cluster (SNC) monitor files Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 14/19] x86/resctrl: Handle removing directories in Sub-NUMA Cluster (SNC) mode Tony Luck
2024-07-02  8:53   ` Borislav Petkov
2024-07-02 17:16     ` Tony Luck
2024-07-02 17:28       ` Borislav Petkov
2024-06-28 21:56 ` [PATCH v23 15/19] x86/resctrl: Fill out rmid_read structure for smp_call*() to read a counter Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 16/19] x86/resctrl: Make __mon_event_count() handle sum domains Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 17/19] x86/resctrl: Enable shared RMID mode on Sub-NUMA Cluster (SNC) systems Tony Luck
2024-07-02  8:59   ` Borislav Petkov
2024-06-28 21:56 ` [PATCH v23 18/19] x86/resctrl: Sub-NUMA Cluster (SNC) detection Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] x86/resctrl: Detect Sub-NUMA Cluster (SNC) mode tip-bot2 for Tony Luck
2024-06-28 21:56 ` [PATCH v23 19/19] x86/resctrl: Update documentation with Sub-NUMA cluster changes Tony Luck
2024-07-02 19:24   ` [tip: x86/cache] " tip-bot2 for Tony Luck
2024-07-01 14:24 ` [PATCH v23 00/19] Add support for Sub-NUMA cluster (SNC) systems Moger, Babu
2024-07-01 16:08   ` Luck, Tony

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=171994825453.2215.4023928263267040624.tip-bot2@tip-bot2 \
    --to=tip-bot2@linutronix.de \
    --cc=babu.moger@amd.com \
    --cc=bp@alien8.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=reinette.chatre@intel.com \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    /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

all inboxes | Powered by JetHome®