1. 25 1月, 2017 1 次提交
  2. 13 1月, 2017 1 次提交
  3. 21 12月, 2016 1 次提交
    • T
      Move target-* CPU file into a target/ folder · fcf5ef2a
      Thomas Huth 提交于
      We've currently got 18 architectures in QEMU, and thus 18 target-xxx
      folders in the root folder of the QEMU source tree. More architectures
      (e.g. RISC-V, AVR) are likely to be included soon, too, so the main
      folder of the QEMU sources slowly gets quite overcrowded with the
      target-xxx folders.
      To disburden the main folder a little bit, let's move the target-xxx
      folders into a dedicated target/ folder, so that target-xxx/ simply
      becomes target/xxx/ instead.
      
      Acked-by: Laurent Vivier <laurent@vivier.eu> [m68k part]
      Acked-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> [tricore part]
      Acked-by: Michael Walle <michael@walle.cc> [lm32 part]
      Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> [s390x part]
      Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> [s390x part]
      Acked-by: Eduardo Habkost <ehabkost@redhat.com> [i386 part]
      Acked-by: Artyom Tarasenko <atar4qemu@gmail.com> [sparc part]
      Acked-by: Richard Henderson <rth@twiddle.net> [alpha part]
      Acked-by: Max Filippov <jcmvbkbc@gmail.com> [xtensa part]
      Reviewed-by: David Gibson <david@gibson.dropbear.id.au> [ppc part]
      Acked-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> [cris&microblaze part]
      Acked-by: Guan Xuetao <gxt@mprc.pku.edu.cn> [unicore32 part]
      Signed-off-by: NThomas Huth <thuth@redhat.com>
      fcf5ef2a
  4. 10 11月, 2016 1 次提交
    • Z
      target-i386/machine: fix migrate faile because of Hyper-V HV_X64_MSR_VP_RUNTIME · 51227875
      ZhuangYanying 提交于
      Hyper-V HV_X64_MSR_VP_RUNTIME was introduced in linux-4.4 + qemu-2.5.
      
      As long as the KVM module supports, qemu will save / load the
      vmstate_msr_hyperv_runtime register during the migration.
      
      Regardless of whether the hyperv_runtime configuration of x86_cpu_properties is
      enabled.
      
      The qemu-2.3 does not support this feature, of course, failed to migrate.
      
          linux-BGSfqC:/home/qemu # ./x86_64-softmmu/qemu-system-x86_64 --enable-kvm \
              -nodefaults -machine pc-i440fx-2.3,accel=kvm,usb=off -smp 4 -m 4096 -drive \
              file=/work/suse/sles11sp3.img.bak,format=raw,if=none,id=drive-virtio-disk0,cache=none \
              -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0 \
              -vnc :99 -device cirrus-vga,id=video0,vgamem_mb=8,bus=pci.0,addr=0x2 -monitor vc
      
          save_section_header:se->section_id=3,se->idstr:ram,se->instance_id=0,se->version_id=4
          save_section_header:se->section_id=0,se->idstr:timer,se->instance_id=0,se->version_id=2
          save_section_header:se->section_id=4,se->idstr:cpu_common,se->instance_id=0,se->version_id=1
          save_section_header:se->section_id=5,se->idstr:cpu,se->instance_id=0,se->version_id=12
          vmstate_subsection_save:vmsd->name:cpu/async_pf_msr
          hyperv_runtime_enable_needed:env->msr_hv_runtime=128902811
          vmstate_subsection_save:vmsd->name:cpu/msr_hyperv_runtime
      
      Since hyperv_runtime is false, vm will not use hv->runtime_offset, then
      vmstate_msr_hyperv_runtime is no need to transfer while migrating.
      
      Signed-off-by: ann.zhuangyanying@huawei.com
      Message-Id: <1478247398-5016-1-git-send-email-ann.zhuangyanying@huawei.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      51227875
  5. 28 10月, 2016 1 次提交
  6. 08 7月, 2016 1 次提交
  7. 19 5月, 2016 3 次提交
  8. 29 1月, 2016 1 次提交
    • P
      x86: Clean up includes · b6a0aa05
      Peter Maydell 提交于
      Clean up includes so that osdep.h is included first and headers
      which it implies are not included manually.
      
      This commit was created with scripts/clean-includes.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1453832250-766-11-git-send-email-peter.maydell@linaro.org
      b6a0aa05
  9. 21 1月, 2016 4 次提交
  10. 17 12月, 2015 2 次提交
    • A
      target-i386/kvm: Hyper-V SynIC timers MSR's support · ff99aa64
      Andrey Smetanin 提交于
      Hyper-V SynIC timers are host timers that are configurable
      by guest through corresponding MSR's (HV_X64_MSR_STIMER*).
      Guest setup and use fired by host events(SynIC interrupt
      and appropriate timer expiration message) as guest clock
      events.
      
      The state of Hyper-V SynIC timers are stored in corresponding
      MSR's. This patch seria implements such MSR's support and migration.
      Signed-off-by: NAndrey Smetanin <asmetanin@virtuozzo.com>
      CC: Paolo Bonzini <pbonzini@redhat.com>
      CC: Richard Henderson <rth@twiddle.net>
      CC: Eduardo Habkost <ehabkost@redhat.com>
      CC: "Andreas Färber" <afaerber@suse.de>
      CC: Marcelo Tosatti <mtosatti@redhat.com>
      CC: Denis V. Lunev <den@openvz.org>
      CC: Roman Kagan <rkagan@virtuozzo.com>
      CC: kvm@vger.kernel.org
      
      Message-Id: <1448464885-8300-3-git-send-email-asmetanin@virtuozzo.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      ff99aa64
    • A
      target-i386/kvm: Hyper-V SynIC MSR's support · 866eea9a
      Andrey Smetanin 提交于
      This patch does Hyper-V Synthetic interrupt
      controller(Hyper-V SynIC) MSR's support and
      migration. Hyper-V SynIC is enabled by cpu's
      'hv-synic' option.
      
      This patch does not allow cpu creation if
      'hv-synic' option specified but kernel
      doesn't support Hyper-V SynIC.
      
      Changes v3:
      * removed 'msr_hv_synic_version' migration because
      it's value always the same
      * moved SynIC msr's initialization into kvm_arch_init_vcpu
      Signed-off-by: NAndrey Smetanin <asmetanin@virtuozzo.com>
      Reviewed-by: NRoman Kagan <rkagan@virtuozzo.com>
      Signed-off-by: NDenis V. Lunev <den@openvz.org>
      CC: Paolo Bonzini <pbonzini@redhat.com>
      CC: Richard Henderson <rth@twiddle.net>
      CC: Eduardo Habkost <ehabkost@redhat.com>
      CC: "Andreas Färber" <afaerber@suse.de>
      CC: Marcelo Tosatti <mtosatti@redhat.com>
      CC: Roman Kagan <rkagan@virtuozzo.com>
      CC: Denis V. Lunev <den@openvz.org>
      CC: kvm@vger.kernel.org
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      866eea9a
  11. 23 10月, 2015 1 次提交
  12. 13 10月, 2015 1 次提交
  13. 16 9月, 2015 1 次提交
  14. 12 6月, 2015 1 次提交
    • J
      migration: Use normal VMStateDescriptions for Subsections · 5cd8cada
      Juan Quintela 提交于
      We create optional sections with this patch.  But we already have
      optional subsections.  Instead of having two mechanism that do the
      same, we can just generalize it.
      
      For subsections we just change:
      
      - Add a needed function to VMStateDescription
      - Remove VMStateSubsection (after removal of the needed function
        it is just a VMStateDescription)
      - Adjust the whole tree, moving the needed function to the corresponding
        VMStateDescription
      Signed-off-by: NJuan Quintela <quintela@redhat.com>
      5cd8cada
  15. 05 6月, 2015 1 次提交
  16. 26 1月, 2015 2 次提交
    • P
      target-i386: make xmm_regs 512-bit wide · b7711471
      Paolo Bonzini 提交于
      Right now, the AVX512 registers are split in many different fields:
      xmm_regs for the low 128 bits of the first 16 registers, ymmh_regs
      for the next 128 bits of the same first 16 registers, zmmh_regs
      for the next 256 bits of the same first 16 registers, and finally
      hi16_zmm_regs for the full 512 bits of the second 16 bit registers.
      
      This makes it simple to move data in and out of the xsave region,
      but would be a nightmare for a hypothetical TCG implementation and
      leads to a proliferation of [XYZ]MM_[BWLSQD] macros.  Instead,
      this patch marshals data manually from the xsave region to a single
      32x512-bit array, simplifying the macro jungle and clarifying which
      bits are in which vmstate subsection.
      
      The migration format is unaffected.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      b7711471
    • P
      target-i386: use vmstate_offset_sub_array for AVX registers · a03c3e90
      Paolo Bonzini 提交于
      After the next patch, each vmstate field will extract parts of a larger
      (32x512-bit) array, so we cannot check the vmstate field against the
      type of the array.
      
      While changing this, change the macros to accept the index of the first
      element (which will not be 0 for Hi16_ZMM_REGS) instead of the number
      of elements (which is always CPU_NB_REGS).
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      a03c3e90
  17. 15 12月, 2014 1 次提交
  18. 25 10月, 2014 1 次提交
  19. 18 9月, 2014 1 次提交
  20. 26 8月, 2014 1 次提交
  21. 26 6月, 2014 1 次提交
  22. 16 6月, 2014 1 次提交
  23. 22 5月, 2014 1 次提交
    • P
      target-i386: get CPL from SS.DPL · 7125c937
      Paolo Bonzini 提交于
      CS.RPL is not equal to the CPL in the few instructions between
      setting CR0.PE and reloading CS.  We get this right in the common
      case, because writes to CR0 do not modify the CPL, but it would
      not be enough if an SMI comes exactly during that brief period.
      Were this to happen, the RSM instruction would erroneously set
      CPL to the low two bits of the real-mode selector; and if they are
      not 00, the next instruction fetch cannot access the code segment
      and causes a triple fault.
      
      However, SS.DPL *is* always equal to the CPL.  In real processors
      (AMD only) there is a weird case of SYSRET setting SS.DPL=SS.RPL
      from the STAR register while forcing CPL=3, but we do not emulate
      that.
      Tested-by: NKevin O'Connor <kevin@koconnor.net>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      7125c937
  24. 05 4月, 2014 1 次提交
  25. 14 3月, 2014 3 次提交
  26. 04 2月, 2014 3 次提交
  27. 12 12月, 2013 1 次提交
  28. 20 9月, 2013 1 次提交
  29. 10 8月, 2013 1 次提交