Re: [RFC PATCH 1/3] kvm: keep track of which task is running a KVMvcpu

From: Avi Kivity
Date: Sun Dec 05 2010 - 07:41:18 EST


On 12/03/2010 04:50 PM, Rik van Riel wrote:
On 12/02/2010 08:18 PM, Chris Wright wrote:
* Rik van Riel (riel@xxxxxxxxxx) wrote:
Keep track of which task is running a KVM vcpu. This helps us
figure out later what task to wake up if we want to boost a
vcpu that got preempted.

Unfortunately there are no guarantees that the same task
always keeps the same vcpu, so we can only track the task
across a single "run" of the vcpu.

So shouldn't it confine to KVM_RUN? The other vcpu_load callers aren't
always a vcpu in a useful runnable state.

Yeah, probably. If you want I can move the setting of
vcpu->task to kvm_vcpu_ioctl.


No need, it's not like something bad will happen.

What I'd really like to see is a soft binding between a vcpu and its thread, so directed yield works even if we're in qemu while we were scheduled out. In fact it's not an unlikely pattern:

spin_lock(&lock)
...
writel(some_port_handled_by_qemu)
...
spin_unlock(&lock)

but that can wait.

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/