1. 13 12月, 2012 5 次提交
  2. 12 12月, 2012 6 次提交
    • K
      qemu-iotests: Test concurrent cluster allocations · 91d4093d
      Kevin Wolf 提交于
      This adds some first tests for qcow2's dependency handling when two
      parallel write requests access the same cluster.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      91d4093d
    • K
      qcow2: Move BLKDBG_EVENT out of the lock · 67a7a0eb
      Kevin Wolf 提交于
      We want to use these events to suspend requests for testing concurrent
      AIO requests. Suspending requests while they are holding the CoMutex is
      rather boring for this purpose.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      67a7a0eb
    • K
      qemu-io: Add AIO debugging commands · 41c695c7
      Kevin Wolf 提交于
      This makes the blkdebug suspend/resume functionality available in
      qemu-io. Use it like this:
      
        $ ./qemu-io blkdebug::/tmp/test.qcow2
        qemu-io> break write_aio req_a
        qemu-io> aio_write 0 4k
        qemu-io> blkdebug: Suspended request 'req_a'
        qemu-io> resume req_a
        blkdebug: Resuming request 'req_a'
        qemu-io> wrote 4096/4096 bytes at offset 0
        4 KiB, 1 ops; 0:00:30.71 (133.359788 bytes/sec and 0.0326 ops/sec)
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      41c695c7
    • K
      blkdebug: Implement suspend/resume of AIO requests · 3c90c65d
      Kevin Wolf 提交于
      This allows more systematic AIO testing. The patch adds three new
      operations to blkdebug:
      
       * Setting a "breakpoint" on a blkdebug event. The next request that
         triggers this breakpoint is suspended and is tagged with a name.
         The breakpoint is removed after a request has triggered it.
      
       * A suspended request (identified by it's tag) can be resumed
      
       * It's possible to check whether a suspended request with a given
         tag exists. This can be used for waiting for an event.
      
      Ideally, we would instead tag requests right when they are created and
      set breakpoints for individual requests. However, at this point the
      block layer doesn't allow this easily, and breakpoints that trigger for
      any request already allow a lot of useful testing.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      3c90c65d
    • K
      blkdebug: Factor out remove_rule() · 9e35542b
      Kevin Wolf 提交于
      The cleanup work to remove a rule depends on the type of the rule. It's
      easy for the existing rules as there is no data that must be cleaned up
      and is specific to a type yet, but the next patch will change this.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      9e35542b
    • K
      blkdebug: Allow usage without config file · 312a2ba0
      Kevin Wolf 提交于
      As soon as new rules can be set during runtime, as introduced by the
      next patch, blkdebug makes sense even without a config file.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      312a2ba0
  3. 11 12月, 2012 28 次提交
  4. 10 12月, 2012 1 次提交
    • A
      Merge remote-tracking branch 'afaerber/qom-cpu' into staging · 1c97e303
      Anthony Liguori 提交于
      * afaerber/qom-cpu:
        target-i386: Postpone cpuid_level update to realize time
        target-i386: Use define for cpuid vendor string size
        target-i386: Separate feature string parsing from CPU model lookup
        target-i386/cpu.c: Coding style fixes
        qdev: qdev_create(): use error_report() instead of hw_error()
        sysemu.h: Include qemu-types.h instead of qemu-common.h
        Create qemu-types.h for struct typedefs
        qlist.h: Do not include qemu-common.h
        qga/channel-posix.c: Include headers it needs
        qapi/qmp-registry.c: Include headers it needs
        ui/vnc-palette.c: Include headers it needs
        user: Rename qemu-types.h to qemu-user-types.h
        user: Move *-user/qemu-types.h to main directory
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      1c97e303