Re: [PATCH] cpuset - rework cpuset_zone_allowed api

From: Paul Menage
Date: Fri Dec 08 2006 - 11:51:28 EST


On 12/8/06, Paul Jackson <pj@xxxxxxx> wrote:

-int __cpuset_zone_allowed(struct zone *z, gfp_t gfp_mask)
+int __cpuset_zone_allowed_softwall(struct zone *z, gfp_t gfp_mask)
{
int node; /* node that zone z is on */
const struct cpuset *cs; /* current cpuset ancestors */
@@ -2335,6 +2351,40 @@ int __cpuset_zone_allowed(struct zone *z
return allowed;
}

While you're changing this, is there a good reason not to check
is_mem_exclusive() *before* taking callback_mutex and calling
nearest_exclusive_ancestor()?

something like:

rcu_read_lock();
exc = is_mem_exclusive(rcu_dereference(current->cs));
rcu_read_unlock();
if (exc)
return 1;

... take callback_mutex, etc ...

Paul
-
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/