1. 03 7月, 2019 1 次提交
    • P
      virtio-pmem: add virtio device · 5f503cd9
      Pankaj Gupta 提交于
      This is the implementation of virtio-pmem device. Support will require
      machine changes for the architectures that will support it, so it will
      not yet be compiled. It can be unlocked with VIRTIO_PMEM_SUPPORTED per
      machine and disabled globally via VIRTIO_PMEM.
      
      We cannot use the "addr" property as that is already used e.g. for
      virtio-pci/pci devices. And we will have e.g. virtio-pmem-pci as a proxy.
      So we have to choose a different one (unfortunately). "memaddr" it is.
      That name should ideally be used by all other virtio-* based memory
      devices in the future.
          -device virtio-pmem-pci,id=p0,bus=bux0,addr=0x01,memaddr=0x1000000...
      Acked-by: NMarkus Armbruster <armbru@redhat.com>
      [ QAPI bits ]
      Signed-off-by: NPankaj Gupta <pagupta@redhat.com>
      [ MemoryDevice/MemoryRegion changes, cleanups, addr property "memaddr",
        split up patches, unplug handler ]
      Signed-off-by: NDavid Hildenbrand <david@redhat.com>
      Message-Id: <20190619094907.10131-2-pagupta@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NCornelia Huck <cohuck@redhat.com>
      5f503cd9
  2. 10 5月, 2019 1 次提交
    • M
      Add vhost-user-input-pci · 9c4d05b7
      Marc-André Lureau 提交于
      Add a new virtio-input device, which connects to a vhost-user
      backend.
      
      Instead of reading configuration directly from an input device /
      evdev (like virtio-input-host), it reads it over vhost-user protocol
      with {SET,GET}_CONFIG messages. The vhost-user-backend handles the
      queues & events setup.
      Signed-off-by: NMarc-André Lureau <marcandre.lureau@redhat.com>
      Message-id: 20190503130034.24916-5-marcandre.lureau@redhat.com
      
      [ kraxel: drop -{non-,}transitional variants ]
      [ kraxel: fix "make check" on !linux ]
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      9c4d05b7
  3. 08 3月, 2019 1 次提交
  4. 22 2月, 2019 2 次提交
  5. 05 2月, 2019 1 次提交
  6. 18 1月, 2019 13 次提交
  7. 01 6月, 2018 1 次提交
  8. 25 5月, 2018 1 次提交
  9. 17 1月, 2017 1 次提交
  10. 02 11月, 2016 2 次提交
  11. 10 9月, 2016 1 次提交
  12. 25 2月, 2016 1 次提交
  13. 16 2月, 2015 1 次提交
  14. 22 9月, 2014 1 次提交
  15. 19 6月, 2014 2 次提交
  16. 19 7月, 2013 1 次提交
  17. 19 4月, 2013 1 次提交
  18. 09 4月, 2013 3 次提交
  19. 11 5月, 2012 1 次提交
  20. 13 3月, 2012 2 次提交
    • E
      add Opteron_G4 CPU model (v2) · 885bb036
      Eduardo Habkost 提交于
      This patch addes a Bulldozer-based Opteron_G4 CPU model.
      
      This version has the ffxsr bit actually disabled, to match what was
      documented below. Thanks to Andre Przywara for spotting the bug.
      
      I am trying to be conservative with the new model, so I am enabling only
      features known to be useful to guests, and not enabling anything that
      was not tested or found to be useful to a guest.
      
      List of missing flags in comparison to real hardware:
      
      - vme: host-specific feature.
      - osxsave: it is not set here because it is set by the guest OS, not by KVM
      - monitor: this is filtered out by the KVM module, so no point in
        enabling it.
      - mmxext: untested, so not enabled.
      - Perf*, Topology*, lwp, ibs: not emulated by KVM.
      - wdt, skinit, osvw, altmovcr8, extapicspace, cmplegacy: untested,
        so not enabled.
      
      List of new flags, in comparison to the Opteron_G3 model:
      
      - xsave: xsave feature, already implemented by Qemu
      - avx, aes, sse4.x, ssse3, pclmulqdq: all new state the new instructions
        could use is handled by the xsave state loading/saving code on Qemu.
      - pdpe1gb: 1GB pages, supported by the KVM kernel module.
      - ffxsr: untested, so not enabled
      - fma4, xop: all new state the new instructions could use is handled by
        the xsave loading/saving code on Qemu.
      - 3dnowprefetch: safe to pass through, though the flag is not used by
        Linux guests, at least.
      
      Below is the comparison between the current Opteron_G3 model
      and the new model being added.
      
      - The "full" line contains the flags found on actual hardware.
      - The "missing" line shows the flags that are present on actual
        hardware, but not on the added Opteron_G4 model.
      - The "new" line shows the flags that were not on the Opteron_G3 model
        but are on Opteron_G4.
      
      feature_edx:
        Opteron_G3: sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de     fpu
        full:       sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de vme fpu
        Opteron_G4: sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de     fpu
        missing:                                                                                              vme
      
      feature_ecx:
        Opteron_G3:                       popcnt               cx16       monitor           sse3
        full:       avx osxsave xsave aes popcnt sse4.2 sse4.1 cx16 ssse3 monitor pclmulqdq sse3
        Opteron_G4: avx         xsave aes popcnt sse4.2 sse4.1 cx16 ssse3         pclmulqdq sse3
        missing:        osxsave                                           monitor
        new:        avx         xsave aes        sse4.2 sse4.1      ssse3         pclmulqdq
      
      extfeature_edx:
        Opteron_G3: lm rdtscp               fxsr mmx        nx pse36 pat cmov mca pge mtrr syscall apic cx8 mce pae msr tsc pse de     fpu
        full:       lm rdtscp pdpe1gb ffxsr fxsr mmx mmxext nx pse36 pat cmov mca pge mtrr syscall apic cx8 mce pae msr tsc pse de vme fpu
        Opteron_G4: lm rdtscp pdpe1gb       fxsr mmx        nx pse36 pat cmov mca pge mtrr syscall apic cx8 mce pae msr tsc pse de     fpu
        missing:                                     mmxext                                                                        vme
        new:                  pdpe1gb
      
      extfeature_ecx:
        Opteron_G3:                                                                misalignsse sse4a abm                        svm           lahf_lm
        full:       Perf* Topology* fma4 lwp wdt skinit xop ibs osvw 3dnowprefetch misalignsse sse4a abm altmovcr8 extapicspace svm cmplegacy lahf_lm
        Opteron_G4:                 fma4                xop          3dnowprefetch misalignsse sse4a abm                        svm           lahf_lm
        new:                        fma4                xop          3dnowprefetch
        missing:    Perf* Topology*      lwp wdt skinit     ibs osvw                                     altmovcr8 extapicspace     cmplegacy
      
      Changes v1 -> v2:
       - Actually disable ffxsr bit
      
      Cc: Andre Przywara <andre.przywara@amd.com>
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      885bb036
    • E
      add SandyBridge CPU model · c34ea314
      Eduardo Habkost 提交于
      This patches add the definition of a SandyBridge CPU model.
      
      Summary of differences:
      
      Flags present on actual hardware, but not on the added model definition:
      
      - pbe, tm, ht, ss, acpi, vme, xTPR, tm2, eist, smx: host-specific
        features, not exposed to guest.
      - ds, ds-cpl, dtes64, pdcm: emulation not supported by KVM (although it
        may be added in the future if implementing PMU virtualization)
      - pcid, vmx, monitor: not emulated by Qemu/KVM right now.
      - osxsave: set by the guest OS, not by Qemu.
      
      Flags added, that were not present on Westmere model:
      
      - xsave: already supported by Qemu
      - avx, pclmulqdq: all new state the new instructions could use is
        handled by xsave state loading/saving code.
      - tsc-deadline, x2apic, rdtscp: already supported by Qemu/KVM.
      
      Below there's a comparison of the features on the current Westmere CPU
      model, and the SandyBridge CPU model.
      
      - The "full" line contains the flags found on actual hardware.
      - The "missing" line shows the flags that are present on actual
        hardware, but not on the added SandyBridge model.
      - The "new" line shows the flags that were not on the Westmere model,
        but are on SandyBridge.
      
      feature_edx:
        Westmere:                 sse2 sse fxsr mmx         clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de     fpu
        full:        pbe tm ht ss sse2 sse fxsr mmx ds acpi clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pge msr tsc pse de vme fpu
        SandyBridge:              sse2 sse fxsr mmx         clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de     fpu
        missing:     pbe tm ht ss                   ds acpi                                                                         vme
      
      feature_ecx:
        Westmere:                      aes              popcnt        sse4.2 sse4.1                cx16 ssse3                                                  sse3
        full:        avx osxsave xsave aes tsc-deadline popcnt x2apic sse4.2 sse4.1 pcid pdcm xTPR cx16 ssse3 tm2 eist smx vmx ds-cpl monitor dtes64 pclmulqdq sse3
        SandyBridge: avx         xsave aes tsc-deadline popcnt x2apic sse4.2 sse4.1                cx16 ssse3                                        pclmulqdq sse3
        missing:         osxsave                                                    pcid pdcm xTPR            tm2 eist smx vmx ds-cpl monitor dtes64
        new:         avx         xsave     tsc-deadline        x2apic                                                                                pclmulqdq
      
      extfeature_edx:
        Westmere:    i64        nx syscall
        full:        i64 rdtscp nx syscall
        SandyBridge: i64 rdtscp nx syscall
        new:             rdtscp
      
      extfeature_ecx:
        Westmere:    lahf_lm
        full:        lahf_lm
        SandyBridge: lahf_lm
      
      Cc: "Dugger, Donald D" <donald.d.dugger@intel.com>
      Cc: "Zhang, Xiantao" <xiantao.zhang@intel.com>
      Acked-by: NXiantao Zhang <xiantao.zhang@intel.com>
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      c34ea314
  21. 23 2月, 2012 2 次提交