mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 08:33:17 +02:00
cxl: Move QoS class to be calculated from the nearest CPU
Retrieve the qos_class (QTG ID) using the access coordinates from the nearest CPU rather than the nearst initiator that may not be a CPU. This may be the more appropriate number that applications care about. For most cases, access0 and access1 have the same values. Link: https://lore.kernel.org/linux-cxl/20240112113023.00006c50@Huawei.com/ Suggested-by: Jonathan Cameron <jonathan.cameron@huawei.com> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Tested-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Dave Jiang <dave.jiang@intel.com> Link: https://lore.kernel.org/r/20240308220055.2172956-8-dave.jiang@intel.com Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
parent
863027d409
commit
6ef83c4e19
|
|
@ -198,12 +198,12 @@ static int cxl_port_perf_data_calculate(struct cxl_port *port,
|
|||
* coordinates in order to allow calculation of access class
|
||||
* 0 and 1 for region later.
|
||||
*/
|
||||
cxl_coordinates_combine(&coord[ACCESS_COORDINATE_LOCAL],
|
||||
&coord[ACCESS_COORDINATE_LOCAL],
|
||||
cxl_coordinates_combine(&coord[ACCESS_COORDINATE_CPU],
|
||||
&coord[ACCESS_COORDINATE_CPU],
|
||||
&dent->coord);
|
||||
dent->entries = 1;
|
||||
rc = cxl_root->ops->qos_class(cxl_root,
|
||||
&coord[ACCESS_COORDINATE_LOCAL],
|
||||
&coord[ACCESS_COORDINATE_CPU],
|
||||
1, &qos_class);
|
||||
if (rc != 1)
|
||||
continue;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user