patches.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Reinette Chatre <reinette.chatre@intel.com>
To: "Luck, Tony" <tony.luck@intel.com>,
	"Yu, Fenghua" <fenghua.yu@intel.com>,
	"Wieczor-Retman, Maciej" <maciej.wieczor-retman@intel.com>,
	Peter Newman <peternewman@google.com>,
	James Morse <james.morse@arm.com>,
	Babu Moger <babu.moger@amd.com>,
	Drew Fustini <dfustini@baylibre.com>,
	Dave Martin <Dave.Martin@arm.com>
Cc: "x86@kernel.org" <x86@kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"patches@lists.linux.dev" <patches@lists.linux.dev>
Subject: Re: [PATCH v20 09/18] x86/resctrl: Add a new field to struct rmid_read for summation of domains
Date: Thu, 20 Jun 2024 18:59:16 -0700	[thread overview]
Message-ID: <cd5c42db-2dea-4a01-bf02-b4316b0ba11d@intel.com> (raw)
In-Reply-To: <SJ1PR11MB6083E7C6C3FB2345A2495480FCC82@SJ1PR11MB6083.namprd11.prod.outlook.com>

Hi Tony,

On 6/20/24 3:42 PM, Luck, Tony wrote:
>>> 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 suggested that the rmid_read structure has become complex
>>> enough to warrant documentation of each of its fields. Add the kerneldoc
>>> documentation for struct rmid_read.
>>>
>>> Signed-off-by: Tony Luck <tony.luck@intel.com>
>>> ---
>>>    arch/x86/kernel/cpu/resctrl/internal.h | 13 +++++++++++++
>>>    1 file changed, 13 insertions(+)
>>>
>>> diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/resctrl/internal.h
>>> index 99f601d05f3b..d29c7b58c151 100644
>>> --- a/arch/x86/kernel/cpu/resctrl/internal.h
>>> +++ b/arch/x86/kernel/cpu/resctrl/internal.h
>>> @@ -145,12 +145,25 @@ union mon_data_bits {
>>>      } u;
>>>    };
>>>
>>> +/**
>>> + * struct rmid_read - Data passed across smp_call*() to read event count
>>> + * @rgrp:  Resctrl group
>>> + * @r:             Resource
>>> + * @d:             Domain. If NULL then sum all domains in @r sharing L3 @ci.id
>>> + * @evtid: Which monitor event to read
>>> + * @first: Initializes MBM counter when true
>>> + * @ci:            Cacheinfo for L3. Used when summing domains
>>> + * @err:   Return error indication
>>> + * @val:   Return value of event counter
>>> + * @arch_mon_ctx: Hardware monitor allocated for this read request (MPAM only)
>>> + */
>>
>> Thank you for adding the kerneldoc. I understand that this file is not
>> consistent on how these kerneldoc are formatted, but could you please
>> pick whether you think sentences need to end with a period and then stick
>> to it in this portion?
> 
> This is about the @d and @ci entries that have a "sentence" ending with period,
> and then more text that doesn't (matching other lines in this block).

Correct.

> 
> Maybe some other punctuation to split the parts?  Do you like "colon"
> 
> * @d:         Domain: If NULL then sum all domains in @r sharing L3 @ci.id
> * @ci:        Cacheinfo for L3: Used when summing domains
> 
> of maybe "dash"
> 
> * @d:         Domain - If NULL then sum all domains in @r sharing L3 @ci.id
> * @ci:        Cacheinfo for L3 - Used when summing domains
> 
> Or something else?

I do not think there is a need to introduce new syntax. It will be easiest
to just have all sentences end with a period. The benefit of this is that it
encourages useful full sentence descriptions. For example, below is a _draft_ of
such a description. Please note that I wrote it quickly and hope it will be improved
(and corrected!). The goal of it being here is to give ideas on how this kerneldoc
can be written to be useful and consistent.

/**
  * 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 contains the sum of event counts from its child resource groups.
  *	   If @d is NULL, @val contains 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).
  */

Reinette

  reply	other threads:[~2024-06-21  1:59 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-10 18:35 [PATCH v20 00/18] Add support for Sub-NUMA cluster (SNC) systems Tony Luck
2024-06-10 18:35 ` [PATCH v20 01/18] x86/resctrl: Prepare for new domain scope Tony Luck
2024-06-20 21:12   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 02/18] x86/resctrl: Prepare to split rdt_domain structure Tony Luck
2024-06-20 21:13   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 03/18] x86/resctrl: Prepare for different scope for control/monitor operations Tony Luck
2024-06-20 21:13   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 04/18] x86/resctrl: Split the rdt_domain and rdt_hw_domain structures Tony Luck
2024-06-20 21:14   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 05/18] x86/resctrl: Add node-scope to the options for feature scope Tony Luck
2024-06-20 21:15   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 06/18] x86/resctrl: Introduce snc_nodes_per_l3_cache Tony Luck
2024-06-17 22:36   ` Moger, Babu
2024-06-18 22:58     ` Reinette Chatre
2024-06-19 14:43       ` Moger, Babu
2024-06-20 21:19   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 07/18] x86/resctrl: Block use of mba_MBps mount option on Sub-NUMA Cluster (SNC) systems Tony Luck
2024-06-20 21:21   ` Reinette Chatre
2024-06-20 22:07     ` Luck, Tony
2024-06-20 22:12       ` Luck, Tony
2024-06-21  1:56       ` Reinette Chatre
2024-06-21 15:24         ` Tony Luck
2024-06-21 17:10           ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 08/18] x86/resctrl: Prepare for new Sub-NUMA Cluster (SNC) monitor files Tony Luck
2024-06-20 21:22   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 09/18] x86/resctrl: Add a new field to struct rmid_read for summation of domains Tony Luck
2024-06-20 21:22   ` Reinette Chatre
2024-06-20 22:42     ` Luck, Tony
2024-06-21  1:59       ` Reinette Chatre [this message]
2024-06-21 16:07         ` Luck, Tony
2024-06-21 17:10           ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 10/18] x86/resctrl: Refactor mkdir_mondata_subdir() with a helper function Tony Luck
2024-06-20 21:23   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 11/18] x86/resctrl: Allocate a new field in union mon_data_bits Tony Luck
2024-06-20 21:28   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 12/18] x86/resctrl: Create Sub-NUMA Cluster (SNC) monitor files Tony Luck
2024-06-20 21:30   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 13/18] x86/resctrl: Handle removing directories in Sub-NUMA Cluster (SNC) mode Tony Luck
2024-06-20 21:30   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 14/18] x86/resctrl: Fill out rmid_read structure for smp_call*() to read a counter Tony Luck
2024-06-20 21:31   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 15/18] x86/resctrl: Make __mon_event_count() handle sum domains Tony Luck
2024-06-20 21:31   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 16/18] x86/resctrl: Enable RMID shared RMID mode on Sub-NUMA Cluster (SNC) systems Tony Luck
2024-06-20 21:32   ` Reinette Chatre
2024-06-10 18:35 ` [PATCH v20 17/18] x86/resctrl: Sub-NUMA Cluster (SNC) detection Tony Luck
2024-06-20 21:34   ` Reinette Chatre
2024-06-21 17:05   ` Markus Elfring
2024-06-21 17:14     ` Luck, Tony
2024-06-10 18:35 ` [PATCH v20 18/18] x86/resctrl: Update documentation with Sub-NUMA cluster changes Tony Luck
2024-06-20 21:35   ` Reinette Chatre
2024-06-13 19:17 ` [PATCH v20 00/18] Add support for Sub-NUMA cluster (SNC) systems Moger, Babu
2024-06-13 20:32   ` Reinette Chatre
2024-06-13 21:02     ` Luck, Tony
2024-06-14 16:27     ` Moger, Babu
2024-06-14 16:46       ` Reinette Chatre
2024-06-14 21:29         ` Moger, Babu
2024-06-14 21:40           ` Luck, Tony
2024-06-14 22:31             ` Moger, Babu
2024-06-14 23:11           ` Reinette Chatre
2024-06-17 14:06             ` Moger, Babu

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=cd5c42db-2dea-4a01-bf02-b4316b0ba11d@intel.com \
    --to=reinette.chatre@intel.com \
    --cc=Dave.Martin@arm.com \
    --cc=babu.moger@amd.com \
    --cc=dfustini@baylibre.com \
    --cc=fenghua.yu@intel.com \
    --cc=james.morse@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maciej.wieczor-retman@intel.com \
    --cc=patches@lists.linux.dev \
    --cc=peternewman@google.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;
as well as URLs for NNTP newsgroup(s).