Re: [RESEND 2][PATCH 4/4] Modify KVM to update guest time accounting.

From: Avi Kivity
Date: Mon Oct 15 2007 - 07:16:23 EST


Laurent Vivier wrote:
Avi Kivity wrote:
Ingo Molnar wrote:
* Avi Kivity <avi@xxxxxxxxxxxx> wrote:

This bit can go; for the external module I can add it back in
external-module-compat.h. No need to pollute mainline with backward
compatibility stuff.
hm:

static inline void kvm_guest_enter(void)
{
current->flags |= PF_VCPU;
}

static inline void kvm_guest_exit(void)
{
}

shouldnt PF_VCPU be cleared in kvm_guest_exit()?
IIRC the accounting code clears it, but yes, it may not have been called
at all, so clearing it here is needed.


No, It must not be cleared here because we can't enter in the accounting code
between kvm_guest_enter(void) and kvm_guest_exit(void).


Right.

This is why the accounting code clears it.

But if we didn't get an interrupt in that time?

We can clear it a bit later, after local_irq_enable() in __vcpu_run(). However we need a nop instruction first because "sti" keeps interrupts disabled for one more instruction.


--
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/