Re: [PATCH RFC 3/4] driver/perf: Add identifier sysfs file for Yitian 710 DDR

From: Jing Zhang
Date: Wed Mar 29 2023 - 08:03:19 EST




在 2023/3/29 下午3:55, Shuai Xue 写道:
>
>
> On 2023/3/27 AM10:46, Jing Zhang wrote:
>> To allow userspace to identify the specific implementation of the device,
>> add an "identifier" sysfs file.
>>
>> The perf tool can match the Yitian 710 DDR metric through the identifier.
>>
>> Signed-off-by: Jing Zhang <renyu.zj@xxxxxxxxxxxxxxxxx>
>> ---
>> drivers/perf/alibaba_uncore_drw_pmu.c | 27 +++++++++++++++++++++++++++
>> 1 file changed, 27 insertions(+)
>>
>> diff --git a/drivers/perf/alibaba_uncore_drw_pmu.c b/drivers/perf/alibaba_uncore_drw_pmu.c
>> index a7689fe..6639a57 100644
>> --- a/drivers/perf/alibaba_uncore_drw_pmu.c
>> +++ b/drivers/perf/alibaba_uncore_drw_pmu.c
>> @@ -236,10 +236,37 @@ static ssize_t ali_drw_pmu_cpumask_show(struct device *dev,
>> .attrs = ali_drw_pmu_cpumask_attrs,
>> };
>>
>> +static ssize_t ali_drw_pmu_identifier_show(struct device *dev,
>> + struct device_attribute *attr,
>> + char *page)
>> +{
>> + return sysfs_emit(page, "%s\n", "ali_drw_yitian710");
>
> Is it possible to rename identifier as "ali_drw_pmu"? I don't think we need only
> limit alibaba_uncore_drw_pmu to Yitian710 SoC here.
>

Ok, I will rename it as "ali_drw_pmu".

Thanks,
Jing

> Thank you.
> Shuai
>
>> +}
>> +
>> +static umode_t ali_drw_pmu_identifier_attr_visible(struct kobject *kobj,
>> + struct attribute *attr, int n)
>> +{
>> + return attr->mode;
>> +}
>> +
>> +static struct device_attribute ali_drw_pmu_identifier_attr =
>> + __ATTR(identifier, 0444, ali_drw_pmu_identifier_show, NULL);
>> +
>> +static struct attribute *ali_drw_pmu_identifier_attrs[] = {
>> + &ali_drw_pmu_identifier_attr.attr,
>> + NULL,
>> +};
>> +
>> +static const struct attribute_group ali_drw_pmu_identifier_attr_group = {
>> + .attrs = ali_drw_pmu_identifier_attrs,
>> + .is_visible = ali_drw_pmu_identifier_attr_visible,
>> +};
>> +
>> static const struct attribute_group *ali_drw_pmu_attr_groups[] = {
>> &ali_drw_pmu_events_attr_group,
>> &ali_drw_pmu_cpumask_attr_group,
>> &ali_drw_pmu_format_group,
>> + &ali_drw_pmu_identifier_attr_group,
>> NULL,
>> };
>>