cpupools: optimise domain creation if pool movement is a no-op
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 23 Apr 2010 07:38:35 +0000 (08:38 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 23 Apr 2010 07:38:35 +0000 (08:38 +0100)
Signed-off by: Juergen Gross <juergen.gross@ts.fujitsu.com>

xen/common/cpupool.c

index 7e322960612f1e8415058931fc9dc7b38f6bcc3c..6baedd0e148a2f39818bb55abbb1d74fc2ee0204 100644 (file)
@@ -520,6 +520,12 @@ addcpu_out:
             rcu_unlock_domain(d);
             break;
         }
+        if ( op->cpupool_id == d->cpupool->cpupool_id )
+        {
+            ret = 0;
+            rcu_unlock_domain(d);
+            break;
+        }
         printk(XENLOG_DEBUG "cpupool move_domain(dom=%d)->pool=%d\n",
             d->domain_id, op->cpupool_id);
         ret = -ENOENT;