[PATCH] cpuset: update_nodemask code reformat
authorPaul Jackson <pj@sgi.com>
Sun, 8 Jan 2006 09:01:52 +0000 (01:01 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 9 Jan 2006 04:13:43 +0000 (20:13 -0800)
Restructure code layout of the kernel/cpuset.c update_nodemask() routine,
removing embedded returns and nested if's in favor of goto completion labels.
This is being done in anticipation of adding more logic to this routine, which
will favor the goto style structure.

Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
kernel/cpuset.c

index f513dd9..3ea63da 100644 (file)
@@ -799,18 +799,23 @@ static int update_nodemask(struct cpuset *cs, char *buf)
        trialcs = *cs;
        retval = nodelist_parse(buf, trialcs.mems_allowed);
        if (retval < 0)
-               return retval;
+               goto done;
        nodes_and(trialcs.mems_allowed, trialcs.mems_allowed, node_online_map);
-       if (nodes_empty(trialcs.mems_allowed))
-               return -ENOSPC;
-       retval = validate_change(cs, &trialcs);
-       if (retval == 0) {
-               down(&callback_sem);
-               cs->mems_allowed = trialcs.mems_allowed;
-               atomic_inc(&cpuset_mems_generation);
-               cs->mems_generation = atomic_read(&cpuset_mems_generation);
-               up(&callback_sem);
+       if (nodes_empty(trialcs.mems_allowed)) {
+               retval = -ENOSPC;
+               goto done;
        }
+       retval = validate_change(cs, &trialcs);
+       if (retval < 0)
+               goto done;
+
+       down(&callback_sem);
+       cs->mems_allowed = trialcs.mems_allowed;
+       atomic_inc(&cpuset_mems_generation);
+       cs->mems_generation = atomic_read(&cpuset_mems_generation);
+       up(&callback_sem);
+
+done:
        return retval;
 }