Re: [PATCH v3 1/2] drivers: base: cacheinfo: Do not populate sysfs for unknown cache types

Jeffrey Hugo
2018-10-03T13:47:42Z

On 10/3/2018 3:35 AM, Rafael J. Wysocki wrote:
> On Friday, September 28, 2018 4:57:56 AM CEST Jeffrey Hugo wrote:
>> If a cache has an unknown type because neither the hardware nor the
>> firmware told us, an entry in the sysfs tree will be made, but the type
>> file will not be present. lscpu depends on the type file being present
>> for every entry, and will error out without printing system information
>> if lscpu cannot open the type file.
>>
>> Presenting information about a cache without indicating its type is not
>> useful, therefore if we hit a cache with an unknown type, stop populating
>> sysfs so that userspace has the maximum amount of useful information.
>>
>> This addresses the following lscpu error, which prevents any output.
>> lscpu: cannot open /sys/devices/system/cpu/cpu0/cache/index3/type: No such
>> file or directory
>>
>> Suggested-by: Sudeep Holla <sudeep.holla@arm.com>
>> Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
>> Reviewed-by: Jeremy Linton <jeremy.linton@arm.com>
>> ---
>> drivers/base/cacheinfo.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/base/cacheinfo.c b/drivers/base/cacheinfo.c
>> index 5d5b598..cf78fa6 100644
>> --- a/drivers/base/cacheinfo.c
>> +++ b/drivers/base/cacheinfo.c
>> @@ -615,6 +615,8 @@ static int cache_add_dev(unsigned int cpu)
>> this_leaf = this_cpu_ci->info_list + i;
>> if (this_leaf->disable_sysfs)
>> continue;
>> + if (this_leaf->type == CACHE_TYPE_NOCACHE)
>> + break;
>> cache_groups = cache_get_attribute_groups(this_leaf);
>> ci_dev = cpu_device_create(parent, this_leaf, cache_groups,
>> "index%1u", i);
>>
>
> Can you please resend this patch with all tags collected so far?

Will do.

--
Jeffrey Hugo
Qualcomm Datacenter Technologies as an affiliate of Qualcomm
Technologies, Inc.