27 Dec, 2011

1 commit

  • When syncing KVM headers with QEMU I (or whoever applies the
    diff) end up automatically fixing whitespaces. One of them
    is in kvm_para.h.

    It's a lot more consistent for people who don't do the whitespace
    fixups automatically to already have fixed headers in Linux. So
    remove the sparse empty line at the end of kvm_para.h and everyone's
    happy.

    Reported-by: Blue Swirl
    Signed-off-by: Alexander Graf

    Alexander Graf
     

24 Oct, 2010

3 commits

  • Currently x86 is the only architecture that uses kvm_guest_init(). With
    PowerPC we're getting a second user, but the signature is different there
    and we don't need to export it, as it uses the normal kernel init framework.

    So let's move the x86 specific definition of that function over to the x86
    specfic header file.

    Signed-off-by: Alexander Graf
    Signed-off-by: Avi Kivity

    Alexander Graf
     
  • We will be introducing a method to project the shared page in guest context.
    As soon as we're talking about this coupling, the shared page is colled magic
    page.

    This patch introduces simple defines, so the follow-up patches are easier to
    read.

    Signed-off-by: Alexander Graf
    Signed-off-by: Avi Kivity

    Alexander Graf
     
  • To communicate with KVM directly we need to plumb some sort of interface
    between the guest and KVM. Usually those interfaces use hypercalls.

    This hypercall implementation is described in the last patch of the series
    in a special documentation file. Please read that for further information.

    This patch implements stubs to handle KVM PPC hypercalls on the host and
    guest side alike.

    Signed-off-by: Alexander Graf
    Signed-off-by: Avi Kivity

    Alexander Graf
     

10 Sep, 2009

1 commit

  • So far unprivileged guest callers running in ring 3 can issue, e.g., MMU
    hypercalls. Normally, such callers cannot provide any hand-crafted MMU
    command structure as it has to be passed by its physical address, but
    they can still crash the guest kernel by passing random addresses.

    To close the hole, this patch considers hypercalls valid only if issued
    from guest ring 0. This may still be relaxed on a per-hypercall base in
    the future once required.

    Cc: stable@kernel.org
    Signed-off-by: Jan Kiszka
    Signed-off-by: Avi Kivity

    Jan Kiszka
     

27 Apr, 2008

2 commits


31 Jan, 2008

2 commits

  • kvm_para.h potentially contains definitions that are to be used by userspace,
    so it should not be included inside the __KERNEL__ block. To protect its own
    data structures, kvm_para.h already includes its own __KERNEL__ block.

    Signed-off-by: Glauber de Oliveira Costa
    Acked-by: Amit Shah
    Signed-off-by: Avi Kivity

    Glauber de Oliveira Costa
     
  • This adds a mechanism for exposing the virtual apic tpr to the guest, and a
    protocol for letting the guest update the tpr without causing a vmexit if
    conditions allow (e.g. there is no interrupt pending with a higher priority
    than the new tpr).

    Signed-off-by: Avi Kivity

    Avi Kivity
     

30 Jan, 2008

2 commits

  • Currently kvm provides hypercalls only for x86* architectures. To
    provide hypercall infrastructure for other kvm architectures I split
    kvm_para.h into a generic header file and architecture specific
    definitions.

    Signed-off-by: Christian Borntraeger
    Signed-off-by: Avi Kivity

    Christian Borntraeger
     
  • This patch refactors the current hypercall infrastructure to better
    support live migration and SMP. It eliminates the hypercall page by
    trapping the UD exception that would occur if you used the wrong hypercall
    instruction for the underlying architecture and replacing it with the right
    one lazily.

    A fall-out of this patch is that the unhandled hypercalls no longer trap to
    userspace. There is very little reason though to use a hypercall to
    communicate with userspace as PIO or MMIO can be used. There is no code
    in tree that uses userspace hypercalls.

    [avi: fix #ud injection on vmx]

    Signed-off-by: Anthony Liguori
    Signed-off-by: Avi Kivity

    Anthony Liguori
     

04 Mar, 2007

2 commits