1. 05 4月, 2016 9 次提交
    • F
      qemu-iotests: 149: Use "/usr/bin/env python" · 08db36f6
      Fam Zheng 提交于
      Do the same as other scripts, to pick the correct interpreter between
      python2 and python3 from the environment.
      Signed-off-by: NFam Zheng <famz@redhat.com>
      Message-id: 1459504593-2692-1-git-send-email-famz@redhat.com
      Signed-off-by: NMax Reitz <mreitz@redhat.com>
      08db36f6
    • K
      block: Forbid I/O throttling on nodes with multiple parents for 2.6 · 76b22320
      Kevin Wolf 提交于
      As the patches to move I/O throttling to BlockBackend didn't make it in
      time for the 2.6 release, but the release adds new ways of configuring
      VMs whose behaviour would change once the move is done, we need to
      outlaw such configurations temporarily.
      
      The problem exists whenever a BDS has more users than just its BB, for
      example it is used as a backing file for another node. (This wasn't
      possible in 2.5 yet as we introduced node references to specify a
      backing file only recently.) In these cases, the throttling would
      apply to these other users now, but after moving throttling to the
      BlockBackend the other users wouldn't be throttled any more.
      
      This patch prevents making new references to a throttled node as well as
      using monitor commands to throttle a node with multiple parents.
      
      Compared to 2.5 this changes behaviour in some corner cases where
      references were allowed before, like bs->file or Quorum children. It
      seems reasonable to assume that users didn't use I/O throttling on such
      low level nodes. With the upcoming move of throttling into BlockBackend,
      such configurations won't be possible anyway.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      76b22320
    • P
      block: forbid x-blockdev-del from acting on DriveInfo · 5cf87fd6
      Paolo Bonzini 提交于
      Failing on -drive/drive_add created BlockBackends was a
      requirement for x-blockdev-del, but it sneaked through
      the patch review.  Let's fix it now.
      
      Example:
      
      $ x86_64-softmmu/qemu-system-x86_64 -drive if=none,file=null-co://,id=null -qmp stdio
      >> {'execute':'qmp_capabilities'}
      << {"return": {}}
      >> {'execute':'x-blockdev-del','arguments':{'id':'null'}}
      << {"error": {"class": "GenericError", "desc": "Deleting block backend added with drive-add is not supported"}}
      
      And without a DriveInfo:
      
      >> { "execute": "blockdev-add", "arguments": { "options": { "driver":"null-co", "id":"null2"}}}
      << {"return": {}}
      >> {'execute':'x-blockdev-del','arguments':{'id':'null2'}}
      << {"return": {}}
      Suggested-by: NKevin Wolf <kwolf@redhat.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      5cf87fd6
    • P
      Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20160404' into staging · 2e3a76ae
      Peter Maydell 提交于
      target-arm queue:
       * bcm2836: wire up CPU timer interrupts correctly
       * linux-user: ignore EXCP_YIELD in ARM cpu_loop()
       * target-arm: correctly reset SCTLR_EL3
       * target-arm: remove incorrect ALIAS tags from ESR_EL2 and ESR_EL3
       * target-arm: make the 64-bit version of VTCR do the migration
      
      # gpg: Signature made Mon 04 Apr 2016 17:42:16 BST using RSA key ID 14360CDE
      # gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>"
      # gpg:                 aka "Peter Maydell <pmaydell@gmail.com>"
      # gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>"
      
      * remotes/pmaydell/tags/pull-target-arm-20160404:
        target-arm: Make the 64-bit version of VTCR do the migration
        target-arm: Remove incorrect ALIAS tags from ESR_EL2 and ESR_EL3
        target-arm: Correctly reset SCTLR_EL3 for 64-bit CPUs
        linux-user: arm: Handle (ignore) EXCP_YIELD in ARM cpu_loop()
        hw/arm/bcm2836: Wire up CPU timer interrupts correctly
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      2e3a76ae
    • P
      target-arm: Make the 64-bit version of VTCR do the migration · bf06c112
      Peter Maydell 提交于
      Move the ALIAS tag from VTCR_EL2 to VTCR so that we migrate the
      64-bit version, as is usual. (This has no particular effect now
      unless the guest wrote to the high RES0 bits of VTCR_EL2.)
      Add a comment about why it's OK that we don't have the various
      accessor functions that the EL1 TCR regdefs do.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NSergey Fedorov <sergey.fedorov@linaro.org>
      Message-id: 1459435778-5526-4-git-send-email-peter.maydell@linaro.org
      bf06c112
    • P
      target-arm: Remove incorrect ALIAS tags from ESR_EL2 and ESR_EL3 · 094a7d0b
      Peter Maydell 提交于
      The regdefs for the ESR_EL2 and ESR_EL3 system registers should not
      be marked as ARM_CP_ALIAS, because these are the master copies; the
      DFSR regdef in vmsa_pmsa_cp_reginfo[] is marked as an alias.
      Remove the ALIAS tags so that these registers are correctly migrated.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NSergey Fedorov <sergey.fedorov@linaro.rog>
      Message-id: 1459435778-5526-3-git-send-email-peter.maydell@linaro.org
      094a7d0b
    • P
      target-arm: Correctly reset SCTLR_EL3 for 64-bit CPUs · e24fdd23
      Peter Maydell 提交于
      The regdef for SCTRL_EL3 was incorrectly marked as being an
      ARM_CP_ALIAS, with the remark that this was because the 32-bit
      definition would take care of reset and migration. However the
      intention for banked registers as documented in the comment in
      add_cpreg_to_hashtable() is:
      
       * 2) If ARMv8 is enabled then we can count on a 64-bit version
       *    taking care of the secure bank.  This requires that separate
       *    32 and 64-bit definitions are provided.
      
      and so it marks the 32-bit secure banked version as an alias.
      This results in the sctlr_s/sctlr_el[3] field never being reset
      or migrated for a 64-bit CPU with EL3 enabled.
      
      Fix this by removing the ARM_CP_ALIAS annotation from SCTLR_EL3.
      Since this means it now needs a real reset value, move the regdef
      into the same place that we define the 32-bit SCTLR.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NLaurent Desnogues <laurent.desnogues@gmail.com>
      Reviewed-by: NSergey Fedorov <sergey.fedorov@linaro.org>
      Message-id: 1459435778-5526-2-git-send-email-peter.maydell@linaro.org
      e24fdd23
    • P
      linux-user: arm: Handle (ignore) EXCP_YIELD in ARM cpu_loop() · f911e0a3
      Peter Maydell 提交于
      The new-in-ARMv8 YIELD instruction has been implemented to throw
      an EXCP_YIELD back up to the QEMU main loop. In system emulation
      we use this to decide to schedule a different guest CPU in SMP
      configurations. In usermode emulation there is nothing to do,
      so just ignore it and resume the guest.
      
      This prevents an abort with "unhandled CPU exception 0x10004"
      if the guest process uses the YIELD instruction.
      Reported-by: NHunter Laux <hunterlaux@gmail.com>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1456833171-31900-1-git-send-email-peter.maydell@linaro.org
      f911e0a3
    • P
      hw/arm/bcm2836: Wire up CPU timer interrupts correctly · 0dc19823
      Peter Maydell 提交于
      Wire up the CPU timer interrupts in the right order, with the
      nonsecure physical timer on cntpnsirq, the hyp timer on cnthpirq,
      and the secure physical timer on cntpsirq. (We did get the
      virt timer right, at least.)
      Reported-by: NAntonio Huete Jiménez <tuxillo@quantumachine.net>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NAndrew Baumann <Andrew.Baumann@microsoft.com>
      Message-id: 1458210790-6621-1-git-send-email-peter.maydell@linaro.org
      0dc19823
  2. 04 4月, 2016 4 次提交
  3. 01 4月, 2016 5 次提交
  4. 31 3月, 2016 22 次提交