Re: [PATCH v4 8/8] arm,arm64,drivers: add a prefix to drivers arch_topology interfaces
From: Greg KH
Date: Thu May 25 2017 - 09:18:19 EST
On Thu, Apr 20, 2017 at 03:43:16PM +0100, Juri Lelli wrote:
> Now that some functions that deal with arch topology information live
> under drivers, there is a clash of naming that might create confusion.
>
> Tidy things up by creating a drivers namespace for interfaces used by
> arch code; achieve this by prepending a 'atd_' (arch topology driver)
> prefix to driver interfaces.
No one knows, nor will they ever remember, what "atd_" means :(
Naming is hard, I know, here's my suggestion:
> diff --git a/include/linux/arch_topology.h b/include/linux/arch_topology.h
> index 4edae9fe8cdd..e25458d7ee9a 100644
> --- a/include/linux/arch_topology.h
> +++ b/include/linux/arch_topology.h
> @@ -4,14 +4,14 @@
> #ifndef _LINUX_ARCH_TOPOLOGY_H_
> #define _LINUX_ARCH_TOPOLOGY_H_
>
> -void normalize_cpu_capacity(void);
> +void atd_normalize_cpu_capacity(void);
arch_cpu_normalize_capacity();
or
cpu_normalize_capacity();
Why do you care if this is "arch" or not, of course it's arch-specific
in a way, right?
>
> struct device_node;
> -int parse_cpu_capacity(struct device_node *cpu_node, int cpu);
> +int atd_parse_cpu_capacity(struct device_node *cpu_node, int cpu);
cpu_parse_capacity();
> struct sched_domain;
> -unsigned long arch_scale_cpu_capacity(struct sched_domain *sd, int cpu);
> +unsigned long atd_scale_cpu_capacity(struct sched_domain *sd, int cpu);
cpu_scale_capacity();
> -void set_capacity_scale(unsigned int cpu, unsigned long capacity);
> +void atd_set_capacity_scale(unsigned int cpu, unsigned long capacity);
wait, where did the cpu go? This doesn't make much sense, these are all
"capacity" issues, right? If so, then these should be:
capacity_normalize_cpu()
capacity_parse_cpu()
capacity_scale_cpu()
capacity_set_scale()
But this is all really topology stuff, right? Why use "capacity" at
all:
topology_normalize_cpu()
topology_parse_cpu()
topology_scale_cpu()
topology_set_scale()
?
It's always best to put the "subsystem" name first, we have a bad
history of getting this wrong in the past by putting the verb first, not
the noun.
thanks,
greg k-h