Messages in this thread | | | Date | Wed, 04 Mar 2015 09:52:58 +0000 | From | Sudeep Holla <> | Subject | Re: [PATCH RFT v2] x86: move cacheinfo sysfs to generic cacheinfo infrastructure |
| |
On 03/03/15 18:45, Borislav Petkov wrote: [...]
> Now, previously the code did > > - if (!per_cpu(ici_cpuid4_info, i)) > - continue; > > > and __cache_cpumap_setup() already does: > > if (i == cpu || !sib_cpu_ci->info_list) > continue;/* skip if itself or no cacheinfo */ > > so maybe we should do that too in __cache_amd_cpumap_setup(): > > if (!this_cpu_ci->info_list) > continue; > > for the index == 3 case? > > It boots fine here with that change and it is consistent with the > previous code. >
Ok, I will add the above check. Sorry for missing that.
> And yes, the x86 cacheinfo code could use a serious rubbing and cleanup. > > Btw, this patch introduces a bunch of new sysfs nodes in the caches > hierarchy: > > --- caches-guest-before.txt 2015-03-03 15:11:09.168276423 +0100 > +++ caches-guest-after.txt 2015-03-03 18:19:04.084426130 +0100 > @@ -1,6 +1,22 @@ > +/sys/devices/system/cpu/cpu0/cache/power/control:1:auto > +/sys/devices/system/cpu/cpu0/cache/power/async:1:disabled > +/sys/devices/system/cpu/cpu0/cache/power/runtime_enabled:1:disabled > +/sys/devices/system/cpu/cpu0/cache/power/runtime_active_kids:1:0 > +/sys/devices/system/cpu/cpu0/cache/power/runtime_active_time:1:0 > +/sys/devices/system/cpu/cpu0/cache/power/runtime_status:1:unsupported > +/sys/devices/system/cpu/cpu0/cache/power/runtime_usage:1:0 > +/sys/devices/system/cpu/cpu0/cache/power/runtime_suspended_time:1:0 > /sys/devices/system/cpu/cpu0/cache/index0/size:1:64K > /sys/devices/system/cpu/cpu0/cache/index0/type:1:Data > /sys/devices/system/cpu/cpu0/cache/index0/level:1:1 > +/sys/devices/system/cpu/cpu0/cache/index0/power/control:1:auto > +/sys/devices/system/cpu/cpu0/cache/index0/power/async:1:disabled > +/sys/devices/system/cpu/cpu0/cache/index0/power/runtime_enabled:1:disabled > +/sys/devices/system/cpu/cpu0/cache/index0/power/runtime_active_kids:1:0 > +/sys/devices/system/cpu/cpu0/cache/index0/power/runtime_active_time:1:0 > +/sys/devices/system/cpu/cpu0/cache/index0/power/runtime_status:1:unsupported > +/sys/devices/system/cpu/cpu0/cache/index0/power/runtime_usage:1:0 > +/sys/devices/system/cpu/cpu0/cache/index0/power/runtime_suspended_time:1:0 > /sys/devices/system/cpu/cpu0/cache/index0/number_of_sets:1:512 > /sys/devices/system/cpu/cpu0/cache/index0/shared_cpu_map:1:1 > /sys/devices/system/cpu/cpu0/cache/index0/shared_cpu_list:1:0 > ... > > What do those things mean? runtime_active_kids ?? Kids are active during > runtime?! Well, that's a given, no need for a sysfs node for that :-) >
Those extra sysfs are due to that fact that generic cacheinfo sysfs is not using raw kobjects directly anymore (which was the case with most of the old cacheinfo sysfs implementation), but uses device/device attributes as Greg suggested to simply the code and reuse device model code.
Regards, Sudeep
| |