1. 16 3月, 2017 16 次提交
  2. 15 3月, 2017 9 次提交
    • P
      Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging · 7584bf5e
      Peter Maydell 提交于
      # gpg: Signature made Wed 15 Mar 2017 05:05:04 GMT
      # gpg:                using RSA key 0x9CA4ABB381AB73C8
      # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>"
      # gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>"
      # Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8
      
      * remotes/stefanha/tags/block-pull-request:
        os: don't corrupt pre-existing memory-backend data with prealloc
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      7584bf5e
    • P
      Merge remote-tracking branch 'remotes/ehabkost/tags/machine-pull-request' into staging · 926e3683
      Peter Maydell 提交于
      Fix global property and -cpu handling bug
      
      This bug fix was supposed to be applied just after 2.8.0 was
      released, but it slipped through the cracks. Sending it now for
      the next -rc.
      
      # gpg: Signature made Tue 14 Mar 2017 20:04:50 GMT
      # gpg:                using RSA key 0x2807936F984DC5A6
      # gpg: Good signature from "Eduardo Habkost <ehabkost@redhat.com>"
      # Primary key fingerprint: 5A32 2FD5 ABC4 D3DB ACCF  D1AA 2807 936F 984D C5A6
      
      * remotes/ehabkost/tags/machine-pull-request:
        machine: Convert abstract typename on compat_props to subclass names
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      926e3683
    • P
      coverity-model: model address_space_read/write · 4d0e7239
      Paolo Bonzini 提交于
      Commit eb7eeb88 ("memory: split address_space_read and
      address_space_write", 2015-12-17) made address_space_rw
      dispatch to one of address_space_read or address_space_write,
      rather than vice versa.
      
      For callers of address_space_read and address_space_write this
      causes false positive defects when Coverity sees a length-8 write in
      address_space_read and a length-4 (e.g. int*) buffer to read into.
      As long as the size of the buffer is okay, this is a false positive.
      
      Reflect the code change into the model.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Message-Id: <20170315081641.20588-1-pbonzini@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      4d0e7239
    • M
      tests: Use error_free_or_abort() where appropriate · 157db293
      Markus Armbruster 提交于
      Done with this Coccinelle semantic patch:
      
          @@
          expression E;
          @@
          -    g_assert(E);
          -    error_free(E);
          +    error_free_or_abort(&E);
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Message-Id: <1487362554-5688-1-git-send-email-armbru@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      157db293
    • D
      os: don't corrupt pre-existing memory-backend data with prealloc · 9dc44aa5
      Daniel P. Berrange 提交于
      When using a memory-backend object with prealloc turned on, QEMU
      will memset() the first byte in every memory page to zero. While
      this might have been acceptable for memory backends associated
      with RAM, this corrupts application data for NVDIMMs.
      
      Instead of setting every page to zero, read the current byte
      value and then just write that same value back, so we are not
      corrupting the original data. Directly write the value instead
      of memset()ing it, since there's no benefit to memset for a
      single byte write.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Reviewed-by: NAndrea Arcangeli <aarcange@redhat.com>
      Message-id: 20170303113255.28262-1-berrange@redhat.com
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      9dc44aa5
    • E
      machine: Convert abstract typename on compat_props to subclass names · 0bcba41f
      Eduardo Habkost 提交于
      Original problem description by Greg Kurz:
      
      > Since commit "9a4c0e22 hw/virtio-pci: fix virtio
      > behaviour", passing -device virtio-blk-pci.disable-modern=off
      > has no effect on 2.6 machine types because the internal
      > virtio-pci.disable-modern=on compat property always prevail.
      
      The same bug also affects other abstract type names mentioned on
      compat_props by machine-types: apic-common, i386-cpu, pci-device,
      powerpc64-cpu, s390-skeys, spapr-pci-host-bridge, usb-device,
      virtio-pci, x86_64-cpu.
      
      The right fix for this problem is to make sure compat_props and
      -global options are always applied in the order they are
      registered, instead of reordering them based on the type
      hierarchy. But changing the ordering rules of -global is risky
      and might break existing configurations, so we shouldn't do that
      on a stable branch.
      
      This is a temporary hack that will work around the bug when
      registering compat_props properties: if we find an abstract class
      on compat_props, register properties for all its non-abstract
      subtypes instead. This will make sure -global won't be overridden
      by compat_props, while keeping the existing ordering rules on
      -global options.
      
      Note that there's one case that won't be fixed by this hack:
      "-global spapr-pci-vfio-host-bridge.<option>=<value>" won't be
      able to override compat_props, because spapr-pci-host-bridge is
      not an abstract class.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Message-Id: <1481575745-26120-1-git-send-email-ehabkost@redhat.com>
      Reviewed-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      Reviewed-by: NHalil Pasic <pasic@linux.vnet.ibm.com>
      Reviewed-by: NGreg Kurz <groug@kaod.org>
      Tested-by: NGreg Kurz <groug@kaod.org>
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      0bcba41f
    • P
      Update version for v2.9.0-rc0 release · d84f714e
      Peter Maydell 提交于
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      d84f714e
    • P
      Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging · 64c358a3
      Peter Maydell 提交于
      * "x" monitor command fix for KVM (Christian)
      * MemoryRegion name documentation (David)
      * mem-prealloc optimization (Jitendra)
      * -icount/MTTCG fixes (me)
      * "info mtree" niceness (Peter)
      * NBD drop_sync buffer overflow (Vladimir/Eric)
      * small cleanups and bugfixes (Li, Lin, Suramya, Thomas)
      * fix for "-device kvmclock" w/TCG (Eduardo)
      * debug output before crashing on KVM_{GET,SET}_MSRS (Eduardo)
      
      # gpg: Signature made Tue 14 Mar 2017 13:42:05 GMT
      # gpg:                using RSA key 0xBFFBD25F78C7AE83
      # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>"
      # gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>"
      # Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
      #      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83
      
      * remotes/bonzini/tags/for-upstream:
        nbd/client: fix drop_sync [CVE-2017-2630]
        memory: info mtree check mr range overflow
        icount: process QEMU_CLOCK_VIRTUAL timers in vCPU thread
        main-loop: remove now unnecessary optimization
        cpus: define QEMUTimerListNotifyCB for QEMU system emulation
        qemu-timer: do not include sysemu/cpus.h from util/qemu-timer.h
        qemu-timer: fix off-by-one
        target/nios2: take BQL around interrupt check
        scsi: mptsas: fix the wrong reading size in fetch request
        util: Removed unneeded header from path.c
        configure: add the missing help output for optional features
        scripts/dump-guest-memory.py: fix int128_get64 on recent gcc
        kvmclock: Don't crash QEMU if KVM is disabled
        kvm: Print MSR information if KVM_{GET,SET}_MSRS failed
        exec: add cpu_synchronize_state to cpu_memory_rw_debug
        mem-prealloc: reduce large guest start-up and migration time.
        docs: Add a note about mixing bootindex with "-boot order"
        memory_region: Fix name comments
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      64c358a3
    • P
      hw/misc/imx6_src: Don't crash trying to reset missing CPUs · 5e2fb7c5
      Peter Maydell 提交于
      Commit 4881658a introduced a call to arm_get_cpu_by_id(),
      and Coverity noticed that we weren't checking that it didn't
      return NULL (CID 1371652).
      
      Normally this won't happen (because all 4 CPUs are expected
      to exist), but it's possible the user requested fewer CPUs
      on the command line. Handle this possibility by silently
      doing nothing, which is the same behaviour as before commit
      4881658a and also how we handle the other CPU operations
      (since we ignore the INVALID_PARAM returns from arm_set_cpu_on()
      and friends).
      
      There is a slight behavioural difference to the pre-4881658a
      situation: the "reset this core" bit will remain set rather
      than not being permitted to be set. The imx6 datasheet is
      unclear about the behaviour in this odd corner case, so we
      opt for the simpler code rather than complicated logic to
      maintain identical behaviour.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1488542374-1256-1-git-send-email-peter.maydell@linaro.org
      Reviewed-by: NAlex Bennée <alex.bennee@linaro.org>
      5e2fb7c5
  3. 14 3月, 2017 15 次提交