1. 12 9月, 2011 11 次提交
  2. 06 9月, 2011 6 次提交
  3. 26 8月, 2011 1 次提交
    • C
      block: explicit I/O accounting · a597e79c
      Christoph Hellwig 提交于
      Decouple the I/O accounting from bdrv_aio_readv/writev/flush and
      make the hardware models call directly into the accounting helpers.
      
      This means:
       - we do not count internal requests from image formats in addition
         to guest originating I/O
       - we do not double count I/O ops if the device model handles it
         chunk wise
       - we only account I/O once it actuall is done
       - can extent I/O accounting to synchronous or coroutine I/O easily
       - implement I/O latency tracking easily (see the next patch)
      
      I've conveted the existing device model callers to the new model,
      device models that are using synchronous I/O and weren't accounted
      before haven't been updated yet.  Also scsi hasn't been converted
      to the end-to-end accounting as I want to defer that after the pending
      scsi layer overhaul.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      a597e79c
  4. 05 7月, 2011 2 次提交
  5. 15 6月, 2011 5 次提交
  6. 08 6月, 2011 1 次提交
    • K
      ide/core: Remove explicit setting of BM_STATUS_INT · 69c38b8f
      Kevin Wolf 提交于
      BM_STATUS_INT is automatically set during ide_set_irq(), there's no reason to
      set it manually in addition.
      
      There is even one case where the interrupt status bit was set, but no IRQ was
      raised. This is when the PRD table was reached but there is more data to
      transfer. The correct behaviour for this case is not to set BM_STATUS_INT.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      69c38b8f
  7. 19 5月, 2011 2 次提交
    • M
      blockdev: Store -drive option media in DriveInfo · 95b5edcd
      Markus Armbruster 提交于
      DriveInfo is closely tied to -drive, and like -drive, it mixes
      information about host and guest part of the block device.  Unlike
      DriveInfo, BlockDriverState should be about the host part only.
      
      One of the remaining guest bits there is the "type hint".  -drive
      option media sets it, and qdevs "ide-drive", "scsi-disk" and non-qdev
      IF_XEN devices check it to pick HD vs. CD.
      
      Communicate -drive option media via new DriveInfo member media_cd
      instead.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      95b5edcd
    • M
      ide: Split qdev "ide-drive" into "ide-hd" and "ide-cd" · 1f56e32a
      Markus Armbruster 提交于
      An "ide-drive" is either a hard disk or a CD-ROM, depending on the
      associated BlockDriverState's type hint.  Unclean; disk vs. CD belongs
      to the guest part, not the host part.
      
      Have separate qdevs "ide-hd" and "ide-cd" to model disk vs. CD in
      the guest part.
      
      Keep ide-drive for backward compatibility.
      
      "ide-disk" would perhaps be a nicer name than "ide-hd", but there's
      already "scsi-disk", which is like "ide-drive", and will be likewise
      split in the next commit.  {ide,scsi}-{hd,cd} is the best consistent
      set of names I could find within the backward compatibility
      straightjacket.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      1f56e32a
  8. 27 4月, 2011 2 次提交
    • K
      ide: Split atapi.c out · 33231e0e
      Kevin Wolf 提交于
      Besides moving code, this patch only fixes some whitespace issues in the moved
      code and makes all functions in atapi.c static which can be static.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      33231e0e
    • A
      atapi: Add 'medium ready' to 'medium not ready' transition on cd change · 4b9b7092
      Amit Shah 提交于
      MMC-5 Table F.1 lists errors that can be thrown for the TEST_UNIT_READY
      command.  Going from medium not ready to medium ready states is
      communicated by throwing an error.
      
      This adds the missing 'tray opened' event that we fail to report to
      guests.  After doing this, older Linux guests properly revalidate a disc
      on the change command.  HSM violation errors, which caused Linux guests
      to do a soft-reset of the link, also go away:
      
      ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6
      sr 1:0:0:0: CDB: Test Unit Ready: 00 00 00 00 00 00
      ata2.00: cmd a0/00:00:00:00:00/00:00:00:00:00/a0 tag 0
               res 01/60:00:00:00:00/00:00:00:00:00/a0 Emask 0x3 (HSM violation)
      ata2.00: status: { ERR }
      ata2: soft resetting link
      ata2.00: configured for MWDMA2
      ata2: EH complete
      Signed-off-by: NAmit Shah <amit.shah@redhat.com>
      Acked-by: NJes Sorensen <Jes.Sorensen@redhat.com>
      Tested-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      4b9b7092
  9. 13 4月, 2011 7 次提交
  10. 07 4月, 2011 1 次提交
  11. 21 3月, 2011 1 次提交
    • P
      change all other clock references to use nanosecond resolution accessors · 74475455
      Paolo Bonzini 提交于
      This was done with:
      
          sed -i 's/qemu_get_clock\>/qemu_get_clock_ns/' \
              $(git grep -l 'qemu_get_clock\>' )
          sed -i 's/qemu_new_timer\>/qemu_new_timer_ns/' \
              $(git grep -l 'qemu_new_timer\>' )
      
      after checking that get_clock and new_timer never occur twice
      on the same line.  There were no missed occurrences; however, even
      if there had been, they would have been caught by the compiler.
      
      There was exactly one false positive in qemu_run_timers:
      
           -    current_time = qemu_get_clock (clock);
           +    current_time = qemu_get_clock_ns (clock);
      
      which is of course not in this patch.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      74475455
  12. 15 3月, 2011 1 次提交