On 22 September 2012 00:02,  <morten.rasmus...@arm.com> wrote:
> diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel/topology.c

> +void __init arch_get_hmp_domains(struct list_head *hmp_domains_list)
> +{
> +       struct cpumask hmp_fast_cpu_mask;
> +       struct cpumask hmp_slow_cpu_mask;

can be merged to single line.

> +       struct hmp_domain *domain;
> +
> +       arch_get_fast_and_slow_cpus(&hmp_fast_cpu_mask, &hmp_slow_cpu_mask);
> +
> +       /*
> +        * Initialize hmp_domains
> +        * Must be ordered with respect to compute capacity.
> +        * Fastest domain at head of list.
> +        */
> +       domain = (struct hmp_domain *)
> +               kmalloc(sizeof(struct hmp_domain), GFP_KERNEL);

should be:

domain = kmalloc(sizeof(*domain), GFP_KERNEL);

> +       cpumask_copy(&domain->cpus, &hmp_slow_cpu_mask);

what if kmalloc failed?

> +       list_add(&domain->hmp_domains, hmp_domains_list);
> +       domain = (struct hmp_domain *)
> +               kmalloc(sizeof(struct hmp_domain), GFP_KERNEL);

would be better to kmalloc only once with size 2* sizeof(*domain)

> +       cpumask_copy(&domain->cpus, &hmp_fast_cpu_mask);
> +       list_add(&domain->hmp_domains, hmp_domains_list);

Also would be better to create a macro for above two lines to remove
code redundancy.

_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to