1. 17 7月, 2009 1 次提交
  2. 16 7月, 2009 1 次提交
  3. 11 7月, 2009 2 次提交
  4. 10 7月, 2009 4 次提交
  5. 30 6月, 2009 3 次提交
    • K
      qcow2: Cache refcount blocks during snapshot creation · 3b88e52b
      Kevin Wolf 提交于
      The really time consuming part of snapshotting is to adjust the reference count
      of all clusters. Currently after each adjusted cluster the refcount block is
      written to disk.
      
      Don't write each single byte immediately to disk but cache all writes to the
      refcount block and write them out once we're done with the block.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      3b88e52b
    • K
      block-raw: Allow pread beyond the end of growable images · 22afa7b5
      Kevin Wolf 提交于
      When using O_DIRECT, qcow2 snapshots didn't work any more for me. In the
      process of creating the snapshot, qcow2 tries to pwrite some new information
      (e.g. new L1 table) which will often end up being after the old end of the
      image file. Now pwrite tries to align things and reads the old contents of the
      file, read returns 0 because there is nothing to read after the end of file and
      pwrite is stuck in an endless loop.
      
      This patch allows to pread beyond the end of an image file. Whenever the
      given offset is after the end of the image file, the read succeeds and fills
      the buffer with zeros.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      22afa7b5
    • R
      support colon in filenames · 707c0dbc
      Ram Pai 提交于
      Problem: It is impossible to feed filenames with the character colon because
      qemu interprets such names as a protocol. For example filename scsi:0, is
      interpreted as a protocol by name "scsi".
      
      This patch allows user to espace colon characters. For example the above
      filename can now be expressed either as 'scsi\:0' or as file:scsi:0
      
      anything following the "file:" tag is interpreted verbatin. However if "file:"
      tag is omitted then any colon characters in the string must be escaped using
      backslash.
      
      Here are couple of examples:
      
      scsi\:0\:abc is a local file scsi:0:abc
      http\://myweb is a local file by name http://myweb
      file:scsi:0:abc is a local file scsi:0:abc
      file:http://myweb is a local file by name http://mywebSigned-off-by: NRam Pai <linuxram@us.ibm.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      707c0dbc
  6. 29 6月, 2009 1 次提交
  7. 17 6月, 2009 11 次提交
  8. 15 6月, 2009 5 次提交
    • C
      raw-posix: cleanup ioctl methods · 63ec93db
      Christoph Hellwig 提交于
      Rename raw_ioctl and raw_aio_ioctl to hdev_ioctl and hdev_aio_ioctl as they
      are only used for the host device.  Also only add them to the method table
      for the cases where we need them (generic hdev if linux and linux CDROM)
      instead of declaring stubs and always add them.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      63ec93db
    • C
      block: add bdrv_probe_device method · 508c7cb3
      Christoph Hellwig 提交于
      Add a bdrv_probe_device method to all BlockDriver instances implementing
      host devices to move matching of host device types into the actual drivers.
      For now we keep exacly the old matching behaviour based on the devices names,
      although we really should have better detetion methods based on device
      information in the future.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      508c7cb3
    • C
      raw-posix: split hdev drivers · f3a5d3f8
      Christoph Hellwig 提交于
      Instead of declaring one BlockDriver for all host devices declared one
      for each type:  a generic one for normal disk devices, a Linux floppy
      driver and a CDROM driver for Linux and FreeBSD.  This gets rid of a lot
      of messy ifdefs and switching based on the type in the various removal
      device methods.
      
      block.c grows a new method to find the correct host device driver based
      on OS-sepcific criteria, which will later into the actual drivers in a
      later patch in this series.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      f3a5d3f8
    • C
      raw-posix: add a raw_open_common helper · 90babde0
      Christoph Hellwig 提交于
      raw_open and hdev_open contain the same basic logic.  Add a new
      raw_open_common helper containing the guts of the open routine
      and call it from raw_open and hdev_open.
      
      We use the new open_flags field in BDRVRawState to allow passing
      additional open flags to raw_open_common from both.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      90babde0
    • C
      raw-posix: always store open flags · 0e1d8f4c
      Christoph Hellwig 提交于
      Both the Linux floppy and the FreeBSD CDROM host device need to store
      the open flags so that they can re-open the device later.  Store the
      open flags unconditionally to remove the ifdef mess and simply the
      calling conventions for the later patches in the series.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      0e1d8f4c
  9. 06 6月, 2009 1 次提交
  10. 28 5月, 2009 1 次提交
  11. 27 5月, 2009 8 次提交
  12. 22 5月, 2009 2 次提交