1. 30 9月, 2014 2 次提交
    • S
      libqos: use microseconds instead of iterations for virtio timeout · 70556264
      Stefan Hajnoczi 提交于
      Some hosts are slow or overloaded so test execution takes a long time.
      Test cases use timeouts to protect against an infinite loop stalling the
      test forever (especially important in automated test setups).
      
      Commit 6cd14054 ("libqos virtio:
      Increase ISR timeout") increased the clock_step() value in an attempt to
      lengthen the virtio interrupt wait timeout, but timeout failures are
      still occuring on the Travis automated testing platform.
      
      This is because clock_step() only affects the guest's virtual time.
      Virtio requests can be bottlenecked on host disk I/O latency - which
      cannot be improved by stepping the clock, so the fix was ineffective.
      
      This patch changes the qvirtio_wait_queue_isr() and
      qvirtio_wait_config_isr() timeout mechanism from loop iterations to
      microseconds.  This way the test case can specify an absolute 30 second
      timeout.  Number of loop iterations is not a reliable timeout mechanism
      since the speed depends on many factors including host performance.
      
      Tests should no longer timeout on overloaded Travis instances.
      
      Cc: Marc Marí <marc.mari.barcelo@gmail.com>
      Reported-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      70556264
    • S
      libqos: improve event_index test with timeout · e8c81b4d
      Stefan Hajnoczi 提交于
      The virtio event_index feature lets the device driver tell the device
      how many requests to process before raising the next interrupt.
      virtio-blk-test.c tries to verify that the device does not raise an
      interrupt unnecessarily.
      
      Unfortunately the test has a race condition.  It spins checking for an
      interrupt up to 100 times and then assumes the request has finished.  On
      a slow host the I/O request could still be in flight and the test would
      fail.
      
      This patch waits for the request to complete, or until a 30-second
      timeout is reached.  If an interrupt is raised while waiting the test
      fails since the device was not supposed to raise interrupts.
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      e8c81b4d
  2. 29 9月, 2014 2 次提交
    • K
      raw-posix: Fix build without posix_fallocate() · ed911435
      Kevin Wolf 提交于
      Check for the presence of posix_fallocate() in configure and only
      compile in support for PREALLOC_MODE_FALLOC when it's there.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      ed911435
    • P
      Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging · 0ebcc564
      Peter Maydell 提交于
      Block patches
      
      # gpg: Signature made Fri 26 Sep 2014 19:57:52 BST using RSA key ID C88F2FD6
      # gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>"
      
      * remotes/kevin/tags/for-upstream:
        qemu-iotests: Fail test if explicit test case number is unknown
        block: Validate node-name
        vpc: fix beX_to_cpu() and cpu_to_beX() confusion
        docs: add blkdebug block driver documentation
        block: Catch simultaneous usage of options and their aliases
        block: Specify -drive legacy option aliases in array
        block: Improve message for device name clashing with node name
        qemu-nbd: Destroy the BlockDriverState properly
        block: Keep DriveInfo alive until BlockDriverState dies
        blockdev: Disentangle BlockDriverState and DriveInfo creation
        blkdebug: show an error for invalid event names
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      0ebcc564
  3. 27 9月, 2014 13 次提交
  4. 26 9月, 2014 23 次提交