1. 16 May, 2012 2 commits
    • Avi Kivity's avatar
      KVM: VMX: Optimize %ds, %es reload · b2da15ac
      Avi Kivity authored
      On x86_64, we can defer %ds and %es reload to the heavyweight context switch,
      since nothing in the lightweight paths uses the host %ds or %es (they are
      ignored by the processor).  Furthermore we can avoid the load if the segments
      are null, by letting the hardware load the null segments for us.  This is the
      expected case.
      
      On i386, we could avoid the reload entirely, since the entry.S paths take care
      of reload, except for the SYSEXIT path which leaves %ds and %es set to __USER_DS.
      So we set them to the same values as well.
      
      Saves about 70 cycles out of 1600 (around 4%; noisy measurements).
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      b2da15ac
    • Avi Kivity's avatar
      KVM: VMX: Fix %ds/%es clobber · 512d5649
      Avi Kivity authored
      The vmx exit code unconditionally restores %ds and %es to __USER_DS.  This
      can override the user's values, since %ds and %es are not saved and restored
      in x86_64 syscalls.  In practice, this isn't dangerous since nobody uses
      segment registers in long mode, least of all programs that use KVM.
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      512d5649
  2. 14 May, 2012 2 commits
  3. 08 May, 2012 1 commit
    • Avi Kivity's avatar
      Merge branch 'for-upstream' of git://github.com/agraf/linux-2.6 into next · f2569053
      Avi Kivity authored
      PPC updates from Alex.
      
      * 'for-upstream' of git://github.com/agraf/linux-2.6:
        KVM: PPC: Emulator: clean up SPR reads and writes
        KVM: PPC: Emulator: clean up instruction parsing
        kvm/powerpc: Add new ioctl to retreive server MMU infos
        kvm/book3s: Make kernel emulated H_PUT_TCE available for "PR" KVM
        KVM: PPC: bookehv: Fix r8/r13 storing in level exception handler
        KVM: PPC: Book3S: Enable IRQs during exit handling
        KVM: PPC: Fix PR KVM on POWER7 bare metal
        KVM: PPC: Fix stbux emulation
        KVM: PPC: bookehv: Use lwz/stw instead of PPC_LL/PPC_STL for 32-bit fields
        KVM: PPC: Book3S: PR: No isync in slbie path
        KVM: PPC: Book3S: PR: Optimize entry path
        KVM: PPC: booke(hv): Fix save/restore of guest accessible SPRGs.
        KVM: PPC: Restrict PPC_[L|ST]D macro to asm code
        KVM: PPC: bookehv: Use a Macro for saving/restoring guest registers to/from their 64 bit copies.
        KVM: PPC: Use clockevent multiplier and shifter for decrementer
        KVM: Use minimum and maximum address mapped by TLB1
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      f2569053
  4. 06 May, 2012 20 commits
  5. 02 May, 2012 1 commit
  6. 01 May, 2012 3 commits
  7. 27 Apr, 2012 3 commits
  8. 24 Apr, 2012 3 commits
  9. 20 Apr, 2012 1 commit
  10. 19 Apr, 2012 4 commits
    • Avi Kivity's avatar
      KVM: ia64: fix build due to typo · 8281715b
      Avi Kivity authored
      s/kcm/kvm/.
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      8281715b
    • Avi Kivity's avatar
      KVM: Fix page-crossing MMIO · f78146b0
      Avi Kivity authored
      MMIO that are split across a page boundary are currently broken - the
      code does not expect to be aborted by the exit to userspace for the
      first MMIO fragment.
      
      This patch fixes the problem by generalizing the current code for handling
      16-byte MMIOs to handle a number of "fragments", and changes the MMIO
      code to create those fragments.
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      f78146b0
    • Marcelo Tosatti's avatar
      Merge branch 'linus' into queue · eac05567
      Marcelo Tosatti authored
      Merge reason: development work has dependency on kvm patches merged
      upstream.
      
      Conflicts:
      	Documentation/feature-removal-schedule.txt
      Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      eac05567
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 19853301
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "It's like a grab bag of one liners:
      
        - core: fix page flip error path, reorder object teardown.
        - usb: fix the drm_usb module license.
        - i915: VT switch on SNB with non-native modes fix, and a regression
          fix from 3.3.
        - radeon: missing unreserve on SI, AGP/VRAM setup fix (fixes radeon on
          IA64, but its a generic bug), an rn50 regression from 3.3, turn off
          MSIs on rv515 (it loses rearms every so often)."
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        nouveau: Set special lane map for the right chipset
        drm/radeon: fix load detect on rn50 with hardcoded EDIDs.
        drm: Releasing FBs before releasing GEM objects during drm_release
        drm/nouveau/pm: don't read/write beyond end of stack buffer
        drivers: gpu: drm: gma500: mdfld_dsi_output.h: Remove not unneeded include of version.h
        radeon: fix r600/agp when vram is after AGP (v3)
        drm: fix page_flip error handling
        drm/radeon/kms: fix the regression of DVI connector check
        drm/usb: fix module license on drm/usb layer.
        drm/i915: Do not set "Enable Panel Fitter" on SNB pageflips
        drm/i915: Hold mode_config lock whilst changing mode for lastclose()
        drm/radeon/si: add missing radeon_bo_unreserve in si_rlc_init() v2
        drm/radeon: disable MSI on RV515
        drm/i915: don't clobber the special upscaling lvds timings
      19853301