Re: [PATCH, RFC] sched: update_top_cache_domain only at the times ofbuilding sched domain.

From: Peter Zijlstra
Date: Tue Jul 23 2013 - 12:53:32 EST


On Tue, Jul 23, 2013 at 10:20:20PM +0600, Rakib Mullick wrote:

> You mean using sd == NULL rather than using update_cache_domain variable ?

Yes, note how:

@@ -6109,7 +6110,7 @@ static void detach_destroy_domains(const struct cpumask *cpu_map)

rcu_read_lock();
for_each_cpu(i, cpu_map)
- cpu_attach_domain(NULL, &def_root_domain, i);
rcu_read_unlock();
}

Always has NULL for sd? Which means you can do:

@@ -5138,7 +5138,8 @@ cpu_attach_domain(struct sched_domain *sd, struct root_domain *rd, int cpu)
rcu_assign_pointer(rq->sd, sd);
destroy_sched_domains(tmp, cpu);

- update_top_cache_domain(cpu);
+ if (sd)
+ update_top_cache_domain(cpu);
}

/* cpus with isolated domains */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/