]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - kernel/cpuset.c
hotplug cpu: migrate a task within its cpuset
[karo-tx-linux.git] / kernel / cpuset.c
index fa31cb9f98984fcd88483400c79cbf34969e0bc3..50f5dc46368841de3497fe96534df12b871e530b 100644 (file)
@@ -1818,10 +1818,23 @@ cpumask_t cpuset_cpus_allowed(struct task_struct *tsk)
        cpumask_t mask;
 
        mutex_lock(&callback_mutex);
+       mask = cpuset_cpus_allowed_locked(tsk);
+       mutex_unlock(&callback_mutex);
+
+       return mask;
+}
+
+/**
+ * cpuset_cpus_allowed_locked - return cpus_allowed mask from a tasks cpuset.
+ * Must be  called with callback_mutex held.
+ **/
+cpumask_t cpuset_cpus_allowed_locked(struct task_struct *tsk)
+{
+       cpumask_t mask;
+
        task_lock(tsk);
        guarantee_online_cpus(task_cs(tsk), &mask);
        task_unlock(tsk);
-       mutex_unlock(&callback_mutex);
 
        return mask;
 }