RE: [Xen-devel] [PATCH] Yield to VCPU hcall, spinlock yielding
> The key point is that with
> kernel-level preemption notification, VCPUs are always in
> kernel mode when suspended, never in user mode. Application
> state is always saved in Linux, not in Xen, and is available
> to be resumed on another VCPU if Linux so chooses.
In principle, but...
Do you believe this is going to interact well with Linux's work stealing
CPU migration? I haven't looked closely at the current code, but from
Linux's scheduler's POV the de-scheduled (yielded) CPU looks like a
perfectly healthy CPU, so there's no particular reason that another CPU
would steal work from it (without hacking the algorithm, which I suppose
we could do). Also, do you have to do something special in your yield
routine to ensure that no real process is currently running on the
yielded processor so that all processes on the run queue are available
Xen-devel mailing list