On 08/23/2010 11:48 AM, Avi Kivity wrote:
Do you need to match cpu here as well? Or is token globally unique? Perhaps we should make it locally unique to remove a requirement from the host to synchronize? I haven't seen how you generate it yet.
If a task goes to sleep on one VCPU, but that VCPU ends up not being runnable later on, it would be nice to wake the task up on on a different VCPU. I do not remember why it is safe to send this wakeup event as an exception rather than an interrupt...
The other cpu might be waiting for us to yield. We can fix it later with the the pv spinlock infrastructure. Or, we can avoid the allocation. If at most one apf can be pending (is this true?), we can use a per-cpu variable for this dummy entry.
Having a limit of just one APF pending kind of defeats the point. At that point, a second one of these faults would put the VCPU to sleep, which prevents the first task from running once its pagefault (which started earlier) completes... -- All rights reversed -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html