As Chris Benninger says over at: http://www.benninger.ca/?p=58 lots and lots of people have the problem with Squeeze and xen4.0 telling them:
launch_vm: SETVCPUCONTEXT failed (rc=-1)
but nobody seems to know what the solution is. I don't know either, but at least here, a solution might get recorded.
In my case, I can start one guest machine. An identical configuration for a second machine fails. Whichever one I start first, is the one that runs, the other gets the error.
I've got at least a dozen other systems (at my work) running great with Squeeze and 64-bit XEN, but not this new machine at home.
/etc/default/grub
GRUB_CMDLINE_XEN="dom0_mem=1024M"
/etc/xen/xend-config.sxp
(dom0-min-mem 1024)
(enable-dom0-ballooning no)
and no more "launch_vm: SETVCPUCONTEXT failed (rc=-1)" for me.
I hit this, with a configuration for vcpus=2. I changed it to vcpus=1 and then the VM started OK.
I currently have 6 cores, cores 0&1 pinned to the Dom0, and then some CPU's pinned, some not. I had a total of 9 cores in use when I hit this. Changing to vcpus=1 made it 10 cores total.
Next time I reboot the DomU's will be pinned to cores 2-5, to see if that makes a difference. I feel like some limit is being reached here, but I'm not sure what that is.
When I hit this, i had 3 guests running (4 cores available). When i stopped one, i could start the one that failed before. Unfortunately the stopped one ("halt" in the vm) was completely broken (ext4: mount failed, fsck killed all files, lvm failed to remove the volumes...).
Now i reduced the assigned memory, and it works (after recreating the broken image) - so perhaps check whether you assigned more memory than you actually have.