Commit 98e62da8 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'x86-cache-2021-06-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 resource control documentation fixes from Ingo Molnar:
 "Fix Docbook comments in the x86/resctrl code"

* tag 'x86-cache-2021-06-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/resctrl: Fix kernel-doc in internal.h
  x86/resctrl: Fix kernel-doc in pseudo_lock.c
parents 1b98ed0e fd2afa70
...@@ -70,6 +70,7 @@ DECLARE_STATIC_KEY_FALSE(rdt_mon_enable_key); ...@@ -70,6 +70,7 @@ DECLARE_STATIC_KEY_FALSE(rdt_mon_enable_key);
* struct mon_evt - Entry in the event list of a resource * struct mon_evt - Entry in the event list of a resource
* @evtid: event id * @evtid: event id
* @name: name of the event * @name: name of the event
* @list: entry in &rdt_resource->evt_list
*/ */
struct mon_evt { struct mon_evt {
u32 evtid; u32 evtid;
...@@ -78,10 +79,13 @@ struct mon_evt { ...@@ -78,10 +79,13 @@ struct mon_evt {
}; };
/** /**
* struct mon_data_bits - Monitoring details for each event file * union mon_data_bits - Monitoring details for each event file
* @rid: Resource id associated with the event file. * @priv: Used to store monitoring event data in @u
* as kernfs private data
* @rid: Resource id associated with the event file
* @evtid: Event id associated with the event file * @evtid: Event id associated with the event file
* @domid: The domain to which the event file belongs * @domid: The domain to which the event file belongs
* @u: Name of the bit fields struct
*/ */
union mon_data_bits { union mon_data_bits {
void *priv; void *priv;
...@@ -119,6 +123,7 @@ enum rdt_group_type { ...@@ -119,6 +123,7 @@ enum rdt_group_type {
* @RDT_MODE_PSEUDO_LOCKSETUP: Resource group will be used for Pseudo-Locking * @RDT_MODE_PSEUDO_LOCKSETUP: Resource group will be used for Pseudo-Locking
* @RDT_MODE_PSEUDO_LOCKED: No sharing of this resource group's allocations * @RDT_MODE_PSEUDO_LOCKED: No sharing of this resource group's allocations
* allowed AND the allocations are Cache Pseudo-Locked * allowed AND the allocations are Cache Pseudo-Locked
* @RDT_NUM_MODES: Total number of modes
* *
* The mode of a resource group enables control over the allowed overlap * The mode of a resource group enables control over the allowed overlap
* between allocations associated with different resource groups (classes * between allocations associated with different resource groups (classes
...@@ -142,7 +147,7 @@ enum rdtgrp_mode { ...@@ -142,7 +147,7 @@ enum rdtgrp_mode {
/** /**
* struct mongroup - store mon group's data in resctrl fs. * struct mongroup - store mon group's data in resctrl fs.
* @mon_data_kn kernlfs node for the mon_data directory * @mon_data_kn: kernfs node for the mon_data directory
* @parent: parent rdtgrp * @parent: parent rdtgrp
* @crdtgrp_list: child rdtgroup node list * @crdtgrp_list: child rdtgroup node list
* @rmid: rmid for this rdtgroup * @rmid: rmid for this rdtgroup
...@@ -282,11 +287,11 @@ struct rftype { ...@@ -282,11 +287,11 @@ struct rftype {
/** /**
* struct mbm_state - status for each MBM counter in each domain * struct mbm_state - status for each MBM counter in each domain
* @chunks: Total data moved (multiply by rdt_group.mon_scale to get bytes) * @chunks: Total data moved (multiply by rdt_group.mon_scale to get bytes)
* @prev_msr Value of IA32_QM_CTR for this RMID last time we read it * @prev_msr: Value of IA32_QM_CTR for this RMID last time we read it
* @prev_bw_msr:Value of previous IA32_QM_CTR for bandwidth counting * @prev_bw_msr:Value of previous IA32_QM_CTR for bandwidth counting
* @prev_bw The most recent bandwidth in MBps * @prev_bw: The most recent bandwidth in MBps
* @delta_bw Difference between the current and previous bandwidth * @delta_bw: Difference between the current and previous bandwidth
* @delta_comp Indicates whether to compute the delta_bw * @delta_comp: Indicates whether to compute the delta_bw
*/ */
struct mbm_state { struct mbm_state {
u64 chunks; u64 chunks;
...@@ -456,11 +461,13 @@ struct rdt_parse_data { ...@@ -456,11 +461,13 @@ struct rdt_parse_data {
* @data_width: Character width of data when displaying * @data_width: Character width of data when displaying
* @domains: All domains for this resource * @domains: All domains for this resource
* @cache: Cache allocation related data * @cache: Cache allocation related data
* @membw: If the component has bandwidth controls, their properties.
* @format_str: Per resource format string to show domain value * @format_str: Per resource format string to show domain value
* @parse_ctrlval: Per resource function pointer to parse control values * @parse_ctrlval: Per resource function pointer to parse control values
* @evt_list: List of monitoring events * @evt_list: List of monitoring events
* @num_rmid: Number of RMIDs available * @num_rmid: Number of RMIDs available
* @mon_scale: cqm counter * mon_scale = occupancy in bytes * @mon_scale: cqm counter * mon_scale = occupancy in bytes
* @mbm_width: Monitor width, to detect and correct for overflow.
* @fflags: flags to choose base and info files * @fflags: flags to choose base and info files
*/ */
struct rdt_resource { struct rdt_resource {
......
...@@ -49,6 +49,7 @@ static struct class *pseudo_lock_class; ...@@ -49,6 +49,7 @@ static struct class *pseudo_lock_class;
/** /**
* get_prefetch_disable_bits - prefetch disable bits of supported platforms * get_prefetch_disable_bits - prefetch disable bits of supported platforms
* @void: It takes no parameters.
* *
* Capture the list of platforms that have been validated to support * Capture the list of platforms that have been validated to support
* pseudo-locking. This includes testing to ensure pseudo-locked regions * pseudo-locking. This includes testing to ensure pseudo-locked regions
...@@ -162,7 +163,7 @@ static struct rdtgroup *region_find_by_minor(unsigned int minor) ...@@ -162,7 +163,7 @@ static struct rdtgroup *region_find_by_minor(unsigned int minor)
} }
/** /**
* pseudo_lock_pm_req - A power management QoS request list entry * struct pseudo_lock_pm_req - A power management QoS request list entry
* @list: Entry within the @pm_reqs list for a pseudo-locked region * @list: Entry within the @pm_reqs list for a pseudo-locked region
* @req: PM QoS request * @req: PM QoS request
*/ */
...@@ -184,6 +185,7 @@ static void pseudo_lock_cstates_relax(struct pseudo_lock_region *plr) ...@@ -184,6 +185,7 @@ static void pseudo_lock_cstates_relax(struct pseudo_lock_region *plr)
/** /**
* pseudo_lock_cstates_constrain - Restrict cores from entering C6 * pseudo_lock_cstates_constrain - Restrict cores from entering C6
* @plr: Pseudo-locked region
* *
* To prevent the cache from being affected by power management entering * To prevent the cache from being affected by power management entering
* C6 has to be avoided. This is accomplished by requesting a latency * C6 has to be avoided. This is accomplished by requesting a latency
...@@ -196,6 +198,8 @@ static void pseudo_lock_cstates_relax(struct pseudo_lock_region *plr) ...@@ -196,6 +198,8 @@ static void pseudo_lock_cstates_relax(struct pseudo_lock_region *plr)
* the ACPI latencies need to be considered while keeping in mind that C2 * the ACPI latencies need to be considered while keeping in mind that C2
* may be set to map to deeper sleep states. In this case the latency * may be set to map to deeper sleep states. In this case the latency
* requirement needs to prevent entering C2 also. * requirement needs to prevent entering C2 also.
*
* Return: 0 on success, <0 on failure
*/ */
static int pseudo_lock_cstates_constrain(struct pseudo_lock_region *plr) static int pseudo_lock_cstates_constrain(struct pseudo_lock_region *plr)
{ {
...@@ -520,7 +524,7 @@ static int pseudo_lock_fn(void *_rdtgrp) ...@@ -520,7 +524,7 @@ static int pseudo_lock_fn(void *_rdtgrp)
/** /**
* rdtgroup_monitor_in_progress - Test if monitoring in progress * rdtgroup_monitor_in_progress - Test if monitoring in progress
* @r: resource group being queried * @rdtgrp: resource group being queried
* *
* Return: 1 if monitor groups have been created for this resource * Return: 1 if monitor groups have been created for this resource
* group, 0 otherwise. * group, 0 otherwise.
...@@ -1140,6 +1144,8 @@ static int measure_l3_residency(void *_plr) ...@@ -1140,6 +1144,8 @@ static int measure_l3_residency(void *_plr)
/** /**
* pseudo_lock_measure_cycles - Trigger latency measure to pseudo-locked region * pseudo_lock_measure_cycles - Trigger latency measure to pseudo-locked region
* @rdtgrp: Resource group to which the pseudo-locked region belongs.
* @sel: Selector of which measurement to perform on a pseudo-locked region.
* *
* The measurement of latency to access a pseudo-locked region should be * The measurement of latency to access a pseudo-locked region should be
* done from a cpu that is associated with that pseudo-locked region. * done from a cpu that is associated with that pseudo-locked region.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment