Index: ioemu/vl.c
===================================================================
--- ioemu.orig/vl.c	2007-05-03 10:07:47.000000000 +0100
+++ ioemu/vl.c	2007-05-03 10:07:52.000000000 +0100
@@ -159,6 +159,8 @@
 int acpi_enabled = 1;
 int fd_bootchk = 1;
 
+extern int vcpus;
+
 int xc_handle;
 
 char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
@@ -5173,6 +5175,7 @@
            "-m megs         set virtual RAM size to megs MB [default=%d]\n"
            "-smp n          set the number of CPUs to 'n' [default=1]\n"
            "-nographic      disable graphical output and redirect serial I/Os to console\n"
+           "-vcpus          set CPU number of guest platform\n"
 #ifndef _WIN32
 	   "-k language     use keyboard layout (for example \"fr\" for French)\n"
 #endif
@@ -5343,6 +5346,7 @@
     QEMU_OPTION_no_acpi,
 
     QEMU_OPTION_d,
+    QEMU_OPTION_vcpus,
 };
 
 typedef struct QEMUOption {
@@ -5424,6 +5428,7 @@
     { "no-acpi", 0, QEMU_OPTION_no_acpi },
     
     { "d", HAS_ARG, QEMU_OPTION_d },
+    { "vcpus", 1, QEMU_OPTION_vcpus },
     { NULL },
 };
 
@@ -6092,6 +6097,10 @@
                 domid = atoi(optarg);
                 fprintf(logfile, "domid: %d\n", domid);
                 break;
+            case QEMU_OPTION_vcpus:
+                vcpus = atoi(optarg);
+                fprintf(logfile, "qemu: the number of cpus is %d\n", vcpus);
+                break;
             }
         }
     }
