1. 30 4月, 2014 3 次提交
  2. 29 4月, 2014 1 次提交
    • J
      block: Ignore duplicate or NULL format_name in bdrv_iterate_format · e855e4fb
      Jeff Cody 提交于
      Some block drivers have multiple BlockDriver instances with identical
      format_name fields (e.g. gluster, nbd).
      
      Both qemu-img and qemu will use bdrv_iterate_format() to list the
      supported formats when a help option is invoked.  As protocols and
      formats may register multiple drivers, redundant listings of formats
      occur (e.g., "Supported formats: ... gluster gluster gluster gluster ...
      ").
      
      Since the list of driver formats will be small, this performs a simple
      linear search on format_name, and ignores any duplicates.
      
      The end result change is that the iterator will no longer receive
      duplicate string names, nor will it receive NULL pointers.
      Signed-off-by: NJeff Cody <jcody@redhat.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      e855e4fb
  3. 26 4月, 2014 2 次提交
  4. 22 4月, 2014 8 次提交
  5. 05 4月, 2014 2 次提交
  6. 04 4月, 2014 1 次提交
  7. 01 4月, 2014 1 次提交
  8. 19 3月, 2014 1 次提交
  9. 14 3月, 2014 1 次提交
    • M
      blockdev: Refuse to open encrypted image unless paused · c3adb58f
      Markus Armbruster 提交于
      Opening an encrypted image takes an additional step: setting the key.
      Between open and the key set, the image must not be used.
      
      We have some protection against accidental use in place: you can't
      unpause a guest while we're missing keys.  You can, however, hot-plug
      block devices lacking keys into a running guest just fine, or insert
      media lacking keys.  In the latter case, notifying the guest of the
      insert is delayed until the key is set, which may suffice to protect
      at least some guests in common usage.
      
      This patch makes the protection apply in more cases, in a rather
      heavy-handed way: it doesn't let you open encrypted images unless
      we're in a paused state.
      
      It doesn't extend the protection to users other than the guest (block
      jobs?).  Use of runstate_check() from block.c is disgusting.  Best I
      can do right now.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Reviewed-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      c3adb58f
  10. 13 3月, 2014 4 次提交
  11. 07 3月, 2014 1 次提交
    • K
      block: Fix error path segfault in bdrv_open() · eb909c7f
      Kevin Wolf 提交于
      Using an invalid option for a block device that is opened with
      BDRV_O_PROTOCOL led to drv = NULL, and when trying to include the driver
      name in the error message, qemu dereferenced it:
      
          $ x86_64-softmmu/qemu-system-x86_64 -drive file=/tmp/test.qcow2,file.foo=bar
          Segmentation fault (core dumped)
      
      With this patch applied, the expected error message is printed:
      
          $ x86_64-softmmu/qemu-system-x86_64 -drive file=/tmp/test.qcow2,file.foo=bar
          qemu-system-x86_64: -drive file=/tmp/test.qcow2,file.foo=bar: could
          not open disk image /tmp/test.qcow2: Block protocol 'file' doesn't
          support the option 'foo'
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Reviewed-by: NBenoit Canet <benoit@irqsave.net>
      eb909c7f
  12. 06 3月, 2014 2 次提交
  13. 05 3月, 2014 1 次提交
  14. 01 3月, 2014 1 次提交
  15. 22 2月, 2014 9 次提交
  16. 18 2月, 2014 1 次提交
  17. 15 2月, 2014 1 次提交