Re: [PATCH v2] arch_topology: Make cpu_capacity sysfs node as ready-only

From: Greg KH
Date: Fri Mar 29 2019 - 12:26:57 EST


On Thu, Mar 28, 2019 at 10:17:05AM +0530, Lingutla Chandrasekhar wrote:
> If user updates any cpu's cpu_capacity, then the new value is going to
> be applied to all its online sibling cpus. But this need not to be correct
> always, as sibling cpus (in ARM, same micro architecture cpus) would have
> different cpu_capacity with different performance characteristics.
> So, updating the user supplied cpu_capacity to all cpu siblings
> is not correct.
>
> And another problem is, current code assumes that 'all cpus in a cluster
> or with same package_id (core_siblings), would have same cpu_capacity'.
> But with commit '5bdd2b3f0f8 ("arm64: topology: add support to remove
> cpu topology sibling masks")', when a cpu hotplugged out, the cpu
> information gets cleared in its sibling cpus. So, user supplied
> cpu_capacity would be applied to only online sibling cpus at the time.
> After that, if any cpu hotplugged in, it would have different cpu_capacity
> than its siblings, which breaks the above assumption.
>
> So, instead of mucking around the core sibling mask for user supplied
> value, use device-tree to set cpu capacity. And make the cpu_capacity
> node as read-only to know the asymmetry between cpus in the system.
> While at it, remove cpu_scale_mutex usage, which used for sysfs write
> protection.
>
> Tested-by: Dietmar Eggemann <dietmar.eggemann@xxxxxxx>
> Tested-by: Quentin Perret <quentin.perret@xxxxxxx>
> Reviewed-by: Quentin Perret <quentin.perret@xxxxxxx>
> Acked-by: Sudeep Holla <sudeep.holla@xxxxxxx>
> Signed-off-by: Lingutla Chandrasekhar <clingutla@xxxxxxxxxxxxxx>

I see 3 "v2" patches in my queue, all different :(

Also, you need to list what changed below the --- line as the
documentation says to do so. Please fix up and resend v3.

thanks,

greg k-h