1. 27 3月, 2017 4 次提交
  2. 24 3月, 2017 8 次提交
  3. 23 3月, 2017 18 次提交
    • P
      Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-2.9-20170323' into staging · 032e95af
      Peter Maydell 提交于
      ppc patch queue for 2017-03-23
      
      Just a single bugfix in this batch.  It's not strictly in ppc code,
      though it's for the pseries machine's benefit.  Eduardo suggested it
      go through my tree however.
      
      # gpg: Signature made Thu 23 Mar 2017 10:09:17 GMT
      # gpg:                using RSA key 0x6C38CACA20D9B392
      # gpg: Good signature from "David Gibson <david@gibson.dropbear.id.au>"
      # gpg:                 aka "David Gibson (Red Hat) <dgibson@redhat.com>"
      # gpg:                 aka "David Gibson (ozlabs.org) <dgibson@ozlabs.org>"
      # gpg:                 aka "David Gibson (kernel.org) <dwg@kernel.org>"
      # Primary key fingerprint: 75F4 6586 AE61 A66C C44E  87DC 6C38 CACA 20D9 B392
      
      * remotes/dgibson/tags/ppc-for-2.9-20170323:
        numa,spapr: align default numa node memory size to 256MB
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      032e95af
    • P
      Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20170323' into staging · 21c84c91
      Peter Maydell 提交于
      Fix linux-user vs. cpu models.
      
      # gpg: Signature made Thu 23 Mar 2017 09:56:13 GMT
      # gpg:                using RSA key 0xDECF6B93C6F02FAF
      # gpg: Good signature from "Cornelia Huck <huckc@linux.vnet.ibm.com>"
      # gpg:                 aka "Cornelia Huck <cornelia.huck@de.ibm.com>"
      # Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0  18CE DECF 6B93 C6F0 2FAF
      
      * remotes/cohuck/tags/s390x-20170323:
        target/s390x: Fix broken user mode
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      21c84c91
    • P
      Merge remote-tracking branch 'remotes/gonglei/tags/cryptodev-next-20170323' into staging · b79fbb2d
      Peter Maydell 提交于
      cryptodev fixes
      
      # gpg: Signature made Thu 23 Mar 2017 09:22:44 GMT
      # gpg:                using RSA key 0x2ED7FDE9063C864D
      # gpg: Good signature from "Gonglei <arei.gonglei@huawei.com>"
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: 3EF1 8E53 3459 E6D1 963A  3C05 2ED7 FDE9 063C 864D
      
      * remotes/gonglei/tags/cryptodev-next-20170323:
        cryptodev: fix asserting single queue
        cryptodev: setiv only when really need
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      b79fbb2d
    • P
      Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2017-03-22-v3' into staging · d81d857f
      Peter Maydell 提交于
      QAPI patches for 2017-03-22
      
      # gpg: Signature made Wed 22 Mar 2017 18:25:15 GMT
      # gpg:                using RSA key 0x3870B400EB918653
      # gpg: Good signature from "Markus Armbruster <armbru@redhat.com>"
      # gpg:                 aka "Markus Armbruster <armbru@pond.sub.org>"
      # Primary key fingerprint: 354B C8B3 D7EB 2A6B 6867  4E5F 3870 B400 EB91 8653
      
      * remotes/armbru/tags/pull-qapi-2017-03-22-v3:
        qapi: Fix QemuOpts visitor regression on unvisited input
        qom: Avoid unvisited 'id'/'qom-type' in user_creatable_add_opts
        tests: Expose regression in QemuOpts visitor
        test-qobject-input-visitor: Cover visit_type_uint64()
        Revert "hostmem: fix QEMU crash by 'info memdev'"
        qapi: Fix string input visitor regression for empty lists
        qapi2texi: Fix translation of *strong* and _emphasized_
        tests/qapi-schema: Systematic positive doc comment tests
        tests/qapi-schema: Make test-qapi.py print docs again
        qapi: Drop unused QAPIDoc member optional
        qapi2texi: Fix to actually fail when 'doc-required' is false
        qapi: Drop excessive Make dependencies on qapi2texi.py
        MAINTAINERS: Add myself for files I touched recently
        keyval: Document issues with 'any' and alternate types
        test-keyval: Cover alternate and 'any' type
        keyval: Improve some comments
        test-keyval: Tweaks to improve list coverage
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      d81d857f
    • P
      Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' into staging · e6ebebc2
      Peter Maydell 提交于
      # gpg: Signature made Wed 22 Mar 2017 17:28:56 GMT
      # gpg:                using RSA key 0xBDBE7B27C0DE3057
      # gpg: Good signature from "Jeffrey Cody <jcody@redhat.com>"
      # gpg:                 aka "Jeffrey Cody <jeff@codyprime.org>"
      # gpg:                 aka "Jeffrey Cody <codyprime@gmail.com>"
      # Primary key fingerprint: 9957 4B4D 3474 90E7 9D98  D624 BDBE 7B27 C0DE 3057
      
      * remotes/cody/tags/block-pull-request:
        blockjob: add devops to blockjob backends
        block-backend: add drained_begin / drained_end ops
        blockjob: add block_job_start_shim
        blockjob: avoid recursive AioContext locking
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      e6ebebc2
    • P
      Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging · 2077cabc
      Peter Maydell 提交于
      virtio, pc: fixes
      
      virtio and misc fixes for 2.9.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      
      # gpg: Signature made Wed 22 Mar 2017 16:29:50 GMT
      # gpg:                using RSA key 0x281F0DB8D28D5469
      # gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>"
      # gpg:                 aka "Michael S. Tsirkin <mst@redhat.com>"
      # Primary key fingerprint: 0270 606B 6F3C DF3D 0B17  0970 C350 3912 AFBE 8E67
      #      Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA  8A0D 281F 0DB8 D28D 5469
      
      * remotes/mst/tags/for_upstream:
        hw/acpi/vmgenid: prevent more than one vmgenid device
        hw/acpi/vmgenid: prevent device realization on pre-2.5 machine types
        virtio: always use handle_aio_output if registered
        virtio: Fix error handling in virtio_bus_device_plugged
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      2077cabc
    • P
      Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging · ad3c6418
      Peter Maydell 提交于
      # gpg: Signature made Wed 22 Mar 2017 12:54:29 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:
        parallels: fix default options parsing
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      ad3c6418
    • S
      target/s390x: Fix broken user mode · a352aa62
      Stefan Weil 提交于
      Returning NULL from get_max_cpu_model results in a SIGSEGV runtime error.
      Signed-off-by: NStefan Weil <sw@weilnetz.de>
      Reviewed-by: NDavid Hildenbrand <david@redhat.com>
      Message-Id: <20170130131517.8092-1-sw@weilnetz.de>
      Cc: qemu-stable@nongnu.org
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      a352aa62
    • H
      cryptodev: fix asserting single queue · b7bad50a
      Halil Pasic 提交于
      We already check for queues == 1 in cryptodev_builtin_init and when that
      is not true raise an error. But before that error is reported the
      assertion in cryptodev_builtin_cleanup kicks in (because object is being
      finalized and freed).
      
      Let's remove assert(queues == 1) form cryptodev_builtin_cleanup as it
      does only harm and no good.
      Reported-by: NBoris Fiuczynski <fiuczy@linux.vnet.ibm.com>
      Signed-off-by: NHalil Pasic <pasic@linux.vnet.ibm.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NGonglei <arei.gonglei@huawei.com>
      b7bad50a
    • L
      cryptodev: setiv only when really need · 50d19cf3
      Longpeng(Mike) 提交于
      ECB mode cipher doesn't need IV, if we setiv for it then qemu
      crypto API would report "Expected IV size 0 not **", so we should
      setiv only when the cipher algos really need.
      Signed-off-by: NLongpeng(Mike) <longpeng2@huawei.com>
      Signed-off-by: NGonglei <arei.gonglei@huawei.com>
      50d19cf3
    • E
      qapi: Fix QemuOpts visitor regression on unvisited input · 21f88d02
      Eric Blake 提交于
      An off-by-one in commit 15c2f669 meant that we were failing to
      check for unparsed input in all QemuOpts visitors.  Recent testsuite
      additions show that fixing the obvious bug with bogus fields will
      also fix the case of an incomplete list visit; update the tests to
      match the new behavior.
      
      Simple testcase:
      
      ./x86_64-softmmu/qemu-system-x86_64 -nodefaults -nographic -qmp stdio -numa node,size=1g
      
      failed to diagnose that 'size' is not a valid argument to -numa, and
      now once again reports:
      
      qemu-system-x86_64: -numa node,size=1g: Invalid parameter 'size'
      
      See also https://bugzilla.redhat.com/show_bug.cgi?id=1434666
      
      CC: qemu-stable@nongnu.org
      Signed-off-by: NEric Blake <eblake@redhat.com>
      Reviewed-by: NMichael Roth <mdroth@linux.vnet.ibm.com>
      Tested-by: NLaurent Vivier <lvivier@redhat.com>
      Message-Id: <20170322144525.18964-4-eblake@redhat.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      21f88d02
    • E
      qom: Avoid unvisited 'id'/'qom-type' in user_creatable_add_opts · 9a6d1acb
      Eric Blake 提交于
      A regression in commit 15c2f669 caused us to silently ignore
      excess input to the QemuOpts visitor.  Later, commit ea4641
      accidentally abused that situation, by removing "qom-type" and
      "id" from the corresponding QDict but leaving them defined in
      the QemuOpts, when using the pair of containers to create a
      user-defined object. Note that since we are already traversing
      two separate items (a QDict and a QemuOpts), we are already
      able to flag bogus arguments, as in:
      
      $ ./x86_64-softmmu/qemu-system-x86_64 -nodefaults -nographic -qmp stdio -object memory-backend-ram,id=mem1,size=4k,bogus=huh
      qemu-system-x86_64: -object memory-backend-ram,id=mem1,size=4k,bogus=huh: Property '.bogus' not found
      
      So the only real concern is that when we re-enable strict checking
      in the QemuOpts visitor, we do not want to start flagging the two
      leftover keys as unvisited.  Rearrange the code to clean out the
      QemuOpts listing in advance, rather than removing items from the
      QDict.  Since "qom-type" is usually an automatic implicit default,
      we don't have to restore it (this does mean that once instantiated,
      QemuOpts is not necessarily an accurate representation of the
      original command line - but this is not the first place to do that);
      however "id" has to be put back (requiring us to cast away a const).
      
      [As a side note, hmp_object_add() turns a QDict into a QemuOpts,
      then calls user_creatable_add_opts() which converts QemuOpts into
      a new QDict. There are probably a lot of wasteful conversions like
      this, but cleaning them up is a much bigger task than the immediate
      regression fix.]
      
      CC: qemu-stable@nongnu.org
      Signed-off-by: NEric Blake <eblake@redhat.com>
      Message-Id: <20170322144525.18964-3-eblake@redhat.com>
      Tested-by: NLaurent Vivier <lvivier@redhat.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      9a6d1acb
    • J
      blockjob: add devops to blockjob backends · 600ac6a0
      John Snow 提交于
      This lets us hook into drained_begin and drained_end requests from the
      backend level, which is particularly useful for making sure that all
      jobs associated with a particular node (whether the source or the target)
      receive a drain request.
      Suggested-by: NKevin Wolf <kwolf@redhat.com>
      Signed-off-by: NJohn Snow <jsnow@redhat.com>
      Reviewed-by: NJeff Cody <jcody@redhat.com>
      Message-id: 20170316212351.13797-4-jsnow@redhat.com
      Signed-off-by: NJeff Cody <jcody@redhat.com>
      600ac6a0
    • J
      block-backend: add drained_begin / drained_end ops · f4d9cc88
      John Snow 提交于
      Allow block backends to forward drain requests to their devices/users.
      The initial intended purpose for this patch is to allow BBs to forward
      requests along to BlockJobs, which will want to pause if their associated
      BB has entered a drained region.
      Signed-off-by: NJohn Snow <jsnow@redhat.com>
      Reviewed-by: NJeff Cody <jcody@redhat.com>
      Message-id: 20170316212351.13797-3-jsnow@redhat.com
      Signed-off-by: NJeff Cody <jcody@redhat.com>
      f4d9cc88
    • J
      blockjob: add block_job_start_shim · e3796a24
      John Snow 提交于
      The purpose of this shim is to allow us to pause pre-started jobs.
      The purpose of *that* is to allow us to buffer a pause request that
      will be able to take effect before the job ever does any work, allowing
      us to create jobs during a quiescent state (under which they will be
      automatically paused), then resuming the jobs after the critical section
      in any order, either:
      
      (1) -block_job_start
          -block_job_resume (via e.g. drained_end)
      
      (2) -block_job_resume (via e.g. drained_end)
          -block_job_start
      
      The problem that requires a startup wrapper is the idea that a job must
      start in the busy=true state only its first time-- all subsequent entries
      require busy to be false, and the toggling of this state is otherwise
      handled during existing pause and yield points.
      
      The wrapper simply allows us to mandate that a job can "start," set busy
      to true, then immediately pause only if necessary. We could avoid
      requiring a wrapper, but all jobs would need to do it, so it's been
      factored out here.
      Signed-off-by: NJohn Snow <jsnow@redhat.com>
      Reviewed-by: NJeff Cody <jcody@redhat.com>
      Message-id: 20170316212351.13797-2-jsnow@redhat.com
      Signed-off-by: NJeff Cody <jcody@redhat.com>
      e3796a24
    • P
      blockjob: avoid recursive AioContext locking · d79df2a2
      Paolo Bonzini 提交于
      Streaming or any other block job hangs when performed on a block device
      that has a non-default iothread.  This happens because the AioContext
      is acquired twice by block_job_defer_to_main_loop_bh and then released
      only once by BDRV_POLL_WHILE.  (Insert rants on recursive mutexes, which
      unfortunately are a temporary but necessary evil for iothreads at the
      moment).
      
      Luckily, the reason for the double acquisition is simple; the function
      acquires the AioContext for both the job iothread and the BDS iothread,
      in case the BDS iothread was changed while the job was running.  It
      is therefore enough to skip the second acquisition when the two
      AioContexts are one and the same.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Reviewed-by: NJeff Cody <jcody@redhat.com>
      Message-id: 1490118490-5597-1-git-send-email-pbonzini@redhat.com
      Signed-off-by: NJeff Cody <jcody@redhat.com>
      d79df2a2
    • L
      hw/acpi/vmgenid: prevent more than one vmgenid device · f9206302
      Laszlo Ersek 提交于
      A system with multiple VMGENID devices is undefined in the VMGENID spec by
      omission.
      
      Cc: "Michael S. Tsirkin" <mst@redhat.com>
      Cc: Ben Warren <ben@skyportsystems.com>
      Cc: Igor Mammedov <imammedo@redhat.com>
      Cc: Paolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NLaszlo Ersek <lersek@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NIgor Mammedov <imammedo@redhat.com>
      f9206302
    • L
      hw/acpi/vmgenid: prevent device realization on pre-2.5 machine types · f2a1ae45
      Laszlo Ersek 提交于
      The WRITE_POINTER linker/loader command that underlies VMGENID depends on
      commit baf2d5bf ("fw-cfg: support writeable blobs", 2017-01-12), which
      in turn depends on fw_cfg DMA.
      
      DMA for fw_cfg is enabled in 2.5+ machine types only (see commit
      e6915b5f, "fw_cfg: unbreak migration compatibility for 2.4 and earlier
      machines", 2016-02-18).
      
      Cc: "Michael S. Tsirkin" <mst@redhat.com>
      Cc: Ben Warren <ben@skyportsystems.com>
      Cc: Igor Mammedov <imammedo@redhat.com>
      Cc: Paolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NLaszlo Ersek <lersek@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NBen Warren &lt;ben@skyportsystems.com <mailto:ben@skyportsystems.com&gt;>
      Reviewed-by: NIgor Mammedov <imammedo@redhat.com>
      f2a1ae45
  4. 22 3月, 2017 6 次提交
  5. 21 3月, 2017 4 次提交
    • P
      configure: Warn about deprecated hosts · 898be3e0
      Peter Maydell 提交于
      We plan to drop support in a future QEMU release for host OSes
      and host architectures for which we have no test machine where
      we can build and run tests. For the 2.9 release, make configure
      print a warning if it is run on such a host, so that the user
      has some warning of the plans and can volunteer to help us
      maintain the port if they need it to continue to function.
      
      This commit flags up as deprecated the CPU architectures:
       * ia64
       * sparc
       * anything which we don't have a TCG port for
         (and which was presumably using TCI)
      and the OSes:
       * GNU/kFreeBSD
       * DragonFly BSD
       * NetBSD
       * OpenBSD
       * Solaris
       * AIX
       * Haiku
      
      It also makes entirely unrecognized host OS strings be
      rejected rather than treated as if they were Linux (which
      likely never worked).
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1490106717-9542-1-git-send-email-peter.maydell@linaro.org
      898be3e0
    • P
      Merge remote-tracking branch 'remotes/gkurz/tags/for-upstream' into staging · 41a56822
      Peter Maydell 提交于
      This pull request fixes a potential QEMU hang in 9pfs and two issues
      reported by Coverity.
      
      # gpg: Signature made Tue 21 Mar 2017 09:57:58 GMT
      # gpg:                using DSA key 0x02FC3AEB0101DBC2
      # gpg: Good signature from "Greg Kurz <groug@kaod.org>"
      # gpg:                 aka "Greg Kurz <groug@free.fr>"
      # gpg:                 aka "Greg Kurz <gkurz@linux.vnet.ibm.com>"
      # gpg:                 aka "Gregory Kurz (Groug) <groug@free.fr>"
      # gpg:                 aka "[jpeg image of size 3330]"
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: 2BD4 3B44 535E C0A7 9894  DBA2 02FC 3AEB 0101 DBC2
      
      * remotes/gkurz/tags/for-upstream:
        9pfs: proxy: assert if unmarshal fails
        9pfs: don't try to flush self and avoid QEMU hang on reset
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      41a56822
    • G
      add opengl_cflags to QEMU_CFLAGS · cc720a5d
      Gerd Hoffmann 提交于
      ... and drop OPENGL_CFLAGS from Makefiles.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      Message-id: 1490079888-29029-1-git-send-email-kraxel@redhat.com
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      cc720a5d
    • E
      parallels: fix default options parsing · ff5bbe56
      Edgar Kaziahmedov 提交于
      parallels block driver is completely broken since commit
          commit 75cdcd15
          Author: Markus Armbruster <armbru@redhat.com>
          Date:   Tue Feb 21 21:14:08 2017 +0100
          option: Fix checking of sizes for overflow and trailing crap
      Right now even simple
          qemu-io -c "read 512 64k" 1.hds
      ends up with
          Unexpected error in parse_option_size() at util/qemu-option.c:188:
          Parameter 'prealloc-size' expects a non-negative number below 2^64
          Aborted (core dumped)
      The cure is simple - we should use 'M' as a suffix in default option value
      instead of 'MiB'.
      Signed-off-by: NEdgar Kaziahmedov <edos@virtuozzo.mipt.ru>
      Signed-off-by: NDenis V. Lunev <den@openvz.org>
      Message-id: 1490002022-22653-1-git-send-email-den@openvz.org
      CC: Markus Armbruster <armbru@redhat.com>
      CC: Stefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      ff5bbe56