1. 09 5月, 2013 6 次提交
  2. 07 5月, 2013 20 次提交
    • A
      Update version for qemu-1.5.0-rc0 · 15d23fb9
      Anthony Liguori 提交于
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      15d23fb9
    • A
      Merge remote-tracking branch 'kraxel/usb.82' into staging · b174de51
      Anthony Liguori 提交于
      # By Gerd Hoffmann (3) and Hans de Goede (1)
      # Via Gerd Hoffmann
      * kraxel/usb.82:
        xhci: handle USB_RET_BABBLE
        uhci: Use an intermediate buffer for usb packet data
        usb-host: add usb_host_full_speed_compat
        usb-host: live migration support for the libusb version
      
      Message-id: 1367920207-1404-1-git-send-email-kraxel@redhat.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      b174de51
    • L
      qga: set umask 0077 when daemonizing (CVE-2013-2007) · c689b4f1
      Laszlo Ersek 提交于
      The qemu guest agent creates a bunch of files with insecure permissions
      when started in daemon mode. For example:
      
        -rw-rw-rw- 1 root root /var/log/qemu-ga.log
        -rw-rw-rw- 1 root root /var/run/qga.state
        -rw-rw-rw- 1 root root /var/log/qga-fsfreeze-hook.log
      
      In addition, at least all files created with the "guest-file-open" QMP
      command, and all files created with shell output redirection (or
      otherwise) by utilities invoked by the fsfreeze hook script are affected.
      
      For now mask all file mode bits for "group" and "others" in
      become_daemon().
      
      Temporarily, for compatibility reasons, stick with the 0666 file-mode in
      case of files newly created by the "guest-file-open" QMP call. Do so
      without changing the umask temporarily.
      Signed-off-by: NLaszlo Ersek <lersek@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      c689b4f1
    • J
      virtio-net: properly check the vhost status during status set · d7108d90
      Jason Wang 提交于
      Commit 32993698 (vhost: disable on tap link down) tries to disable the vhost
      also when the peer's link is down. But the check was not done properly, the
      vhost were only started when:
      
      1) peer's link is not down
      2) virtio-net has already been started.
      
      Since == have a higher precedence than &&, place a brace to make sure both the
      conditions were met then does the check. This fixes the crash when doing a savem
      after set the link off which let qemu crash and complains:
      
      virtio_net_save: Assertion `!n->vhost_started' failed.
      
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      Message-id: 1366972060-21606-1-git-send-email-jasowang@redhat.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      d7108d90
    • A
      Merge remote-tracking branch 'afaerber/qom-cpu' into staging · fd8192a5
      Anthony Liguori 提交于
      # By Eduardo Habkost (6) and others
      # Via Andreas Färber
      * afaerber/qom-cpu:
        target-i386: n270 can MOVBE
        target-i386: Introduce generic CPUID feature compat function
        target-i386: Change CPUID model of 486 to 8
        target-i386: Emulate X86CPU subclasses for global properties
        qdev: Introduce qdev_prop_set_globals_for_type()
        qdev: Let qdev_prop_parse() pass through Error
        target-i386: Add "filtered-features" property to X86CPU
        target-i386: Introduce X86CPU::filtered_features field
        target-i386: Add "feature-words" property to X86CPU
        target-i386: Use FeatureWord loop on filter_features_for_kvm()
        target-i386: Add ECX information to FeatureWordInfo
      fd8192a5
    • G
      xhci: handle USB_RET_BABBLE · 4e906d56
      Gerd Hoffmann 提交于
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      4e906d56
    • H
      uhci: Use an intermediate buffer for usb packet data · 9822261c
      Hans de Goede 提交于
      Due to various unfortunate reasons we cannot reliable detect a guest
      cancelling a packet as soon as it happens, instead we detect cancels
      with some delay.
      
      When packets are handled async, and we directly pass the guest memory for
      the packet to the usb-device as iovec, this means that the usb-device can
      write to guest-memory which the guest has already re-used for other purposes
      -> not good!
      
      This patch fixes this by adding an intermediate buffer and writing back not
      only the result, but also the data, of async completed packets when scanning
      the schedule.
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      9822261c
    • G
      usb-host: add usb_host_full_speed_compat · c3268cc1
      Gerd Hoffmann 提交于
      Alloes to pass through usb2 devices on usb1 host controllers if possible.
      Brings the libusb implementation to feature-parity with the linux usbfs
      code, so the usb-host implementation in 1.5 (libusb) doesn't regress
      compared to 1.4 (usbfs).
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      c3268cc1
    • G
      95efb20c
    • A
      Merge remote-tracking branch 'qemu-kvm/uq/master' into staging · b5803aa3
      Anthony Liguori 提交于
      # By Marcelo Tosatti
      # Via Gleb Natapov
      * qemu-kvm/uq/master:
        kvmvapic: add ioport read accessor
      
      Message-id: cover.1367844188.git.gleb@redhat.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      b5803aa3
    • B
      target-i386: n270 can MOVBE · 4458c236
      Borislav Petkov 提交于
      The Atom core (cpu name "n270" in QEMU speak) supports MOVBE. This is
      needed when booting 3.8 and later linux kernels built with the MATOM
      target because we require MOVBE in order to boot properly now.
      Signed-off-by: NBorislav Petkov <bp@suse.de>
      [ehabkost: added compat code to disable MOVBE on pc-*-1.4 and older]
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      4458c236
    • E
      target-i386: Introduce generic CPUID feature compat function · 0668af54
      Eduardo Habkost 提交于
      Introduce x86_cpu_compat_set_features(), that can be used to set/unset
      feature bits on specific CPU models for machine-type compatibility.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      0668af54
    • A
      Merge branch 's390-for-upstream' of git://github.com/agraf/qemu · fe677fd1
      Aurelien Jarno 提交于
      * 's390-for-upstream' of git://github.com/agraf/qemu:
        s390: update s390-ccw.img
        S390: BIOS boot from given device
        S390: Add virtio-blk boot
        S390: Merging s390_ipl_cpu and s390_ipl_reset
        S390: BIOS create link to src folder for .img file
        S390: BIOS check for file
      fe677fd1
    • A
      target-i386: Change CPUID model of 486 to 8 · b2a856d9
      Andreas Färber 提交于
      This changes the model number of 486 to 8 (DX4) which matches the
      feature set presented, and actually has the CPUID instruction.
      
      This adds a compatibility property, to keep model=0 on pc-*-1.4 and older.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      [AF: Add compat_props entry]
      Tested-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      b2a856d9
    • A
      target-i386: Emulate X86CPU subclasses for global properties · ba2bc7a4
      Andreas Färber 提交于
      After initializing the object from its x86_def_t and before setting any
      additional -cpu arguments, set any global properties for the designated
      subclass <name>-{i386,x86_64}-cpu.
      Reviewed-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      ba2bc7a4
    • A
      qdev: Introduce qdev_prop_set_globals_for_type() · 868d378b
      Andreas Färber 提交于
      Reuse it in qdev_prop_set_globals().
      Reviewed-by: NEduardo Habkost <ehabkost@redhat.com>
      [AF: Renamed from qdev_prop_set_custom_globals()]
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      868d378b
    • A
      qdev: Let qdev_prop_parse() pass through Error · b1fe9bcb
      Andreas Färber 提交于
      Move error reporting to callers.
      Reviewed-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      b1fe9bcb
    • E
      target-i386: Add "filtered-features" property to X86CPU · 7e5292b5
      Eduardo Habkost 提交于
      This property will contain all the features that were removed from the
      CPU because they are not supported by the host.
      
      This way, libvirt or other management tools can emulate the
      check/enforce behavior by checking if filtered-properties is all zeroes,
      before starting the guest.
      
      Example output where some features were missing:
      
        $ qemu-system-x86_64 -enable-kvm -cpu Haswell,check -S \
          -qmp unix:/tmp/m,server,nowait
        warning: host doesn't support requested feature: CPUID.01H:ECX.fma [bit 12]
        warning: host doesn't support requested feature: CPUID.01H:ECX.movbe [bit 22]
        warning: host doesn't support requested feature: CPUID.01H:ECX.tsc-deadline [bit 24]
        warning: host doesn't support requested feature: CPUID.01H:ECX.xsave [bit 26]
        warning: host doesn't support requested feature: CPUID.01H:ECX.avx [bit 28]
        warning: host doesn't support requested feature: CPUID.07H:EBX.fsgsbase [bit 0]
        warning: host doesn't support requested feature: CPUID.07H:EBX.bmi1 [bit 3]
        warning: host doesn't support requested feature: CPUID.07H:EBX.hle [bit 4]
        warning: host doesn't support requested feature: CPUID.07H:EBX.avx2 [bit 5]
        warning: host doesn't support requested feature: CPUID.07H:EBX.smep [bit 7]
        warning: host doesn't support requested feature: CPUID.07H:EBX.bmi2 [bit 8]
        warning: host doesn't support requested feature: CPUID.07H:EBX.erms [bit 9]
        warning: host doesn't support requested feature: CPUID.07H:EBX.invpcid [bit 10]
        warning: host doesn't support requested feature: CPUID.07H:EBX.rtm [bit 11]
        [...]
        $ ./QMP/qmp --path=/tmp/m \
          qom-get --path=/machine/icc-bridge/icc/child[0] \
                  --property=filtered-features
        item[0].cpuid-register: EDX
        item[0].cpuid-input-eax: 2147483658
        item[0].features: 0
        item[1].cpuid-register: EAX
        item[1].cpuid-input-eax: 1073741825
        item[1].features: 0
        item[2].cpuid-register: EDX
        item[2].cpuid-input-eax: 3221225473
        item[2].features: 0
        item[3].cpuid-register: ECX
        item[3].cpuid-input-eax: 2147483649
        item[3].features: 0
        item[4].cpuid-register: EDX
        item[4].cpuid-input-eax: 2147483649
        item[4].features: 0
        item[5].cpuid-register: EBX
        item[5].cpuid-input-eax: 7
        item[5].features: 4025
        item[5].cpuid-input-ecx: 0
        item[6].cpuid-register: ECX
        item[6].cpuid-input-eax: 1
        item[6].features: 356519936
        item[7].cpuid-register: EDX
        item[7].cpuid-input-eax: 1
        item[7].features: 0
      
      Example output when no feature is missing:
      
        $ qemu-system-x86_64 -enable-kvm -cpu Nehalem,enforce -S \
          -qmp unix:/tmp/m,server,nowait
        [...]
        $ ./QMP/qmp --path=/tmp/m \
          qom-get --path=/machine/icc-bridge/icc/child[0] \
                  --property=filtered-features
        item[0].cpuid-register: EDX
        item[0].cpuid-input-eax: 2147483658
        item[0].features: 0
        item[1].cpuid-register: EAX
        item[1].cpuid-input-eax: 1073741825
        item[1].features: 0
        item[2].cpuid-register: EDX
        item[2].cpuid-input-eax: 3221225473
        item[2].features: 0
        item[3].cpuid-register: ECX
        item[3].cpuid-input-eax: 2147483649
        item[3].features: 0
        item[4].cpuid-register: EDX
        item[4].cpuid-input-eax: 2147483649
        item[4].features: 0
        item[5].cpuid-register: EBX
        item[5].cpuid-input-eax: 7
        item[5].features: 0
        item[5].cpuid-input-ecx: 0
        item[6].cpuid-register: ECX
        item[6].cpuid-input-eax: 1
        item[6].features: 0
        item[7].cpuid-register: EDX
        item[7].cpuid-input-eax: 1
        item[7].features: 0
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      7e5292b5
    • E
      target-i386: Introduce X86CPU::filtered_features field · 034acf4a
      Eduardo Habkost 提交于
      This field will contain the feature bits that were filtered out because
      of missing host support.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      034acf4a
    • E
      target-i386: Add "feature-words" property to X86CPU · 8e8aba50
      Eduardo Habkost 提交于
      This property will be useful for libvirt, as libvirt already has logic
      based on low-level feature bits (not feature names), so it will be
      really easy to convert the current libvirt logic to something using the
      "feature-words" property.
      
      The property will have two main use cases:
       - Checking host capabilities, by checking the features of the "host"
         CPU model
       - Checking which features are enabled on each CPU model
      
      Example output:
      
        $ ./QMP/qmp --path=/tmp/m \
          qom-get --path=/machine/icc-bridge/icc/child[0] \
                  --property=feature-words
        item[0].cpuid-register: EDX
        item[0].cpuid-input-eax: 2147483658
        item[0].features: 0
        item[1].cpuid-register: EAX
        item[1].cpuid-input-eax: 1073741825
        item[1].features: 0
        item[2].cpuid-register: EDX
        item[2].cpuid-input-eax: 3221225473
        item[2].features: 0
        item[3].cpuid-register: ECX
        item[3].cpuid-input-eax: 2147483649
        item[3].features: 101
        item[4].cpuid-register: EDX
        item[4].cpuid-input-eax: 2147483649
        item[4].features: 563346425
        item[5].cpuid-register: EBX
        item[5].cpuid-input-eax: 7
        item[5].features: 0
        item[5].cpuid-input-ecx: 0
        item[6].cpuid-register: ECX
        item[6].cpuid-input-eax: 1
        item[6].features: 2155880449
        item[7].cpuid-register: EDX
        item[7].cpuid-input-eax: 1
        item[7].features: 126614521
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      8e8aba50
  3. 06 5月, 2013 14 次提交