1. 26 5月, 2011 1 次提交
  2. 04 5月, 2011 3 次提交
  3. 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
  4. 12 1月, 2011 6 次提交
  5. 12 12月, 2010 1 次提交
  6. 12 7月, 2010 1 次提交
    • I
      pci: don't overwrite multi functio bit in pci header type. · b80d4a98
      Isaku Yamahata 提交于
      Don't overwrite pci header type.
      Otherwise, multi function bit which pci_init_header_type() sets
      appropriately is lost.
      Anyway PCI_HEADER_TYPE_NORMAL is zero, so it is unnecessary to zero
      which is already zero cleared.
      
      how to test:
      run qemu and issue info pci to see whether a device in question is
      normal device, not pci-to-pci bridge.
      This is handy because guest os isn't required.
      
      tested changes:
      The following files are covered by using following commands.
      sparc64-softmmu
        apb_pci.c, vga-pci.c, cmd646.c, ne2k_pci.c, sun4u.c
      ppc-softmmu
        grackle_pci.c, cmd646.c, ne2k_pci.c, vga-pci.c, macio.c
      ppc-softmmu -M mac99
        unin_pci.c(uni-north, uni-north-agp)
      ppc64-softmmu
        pci-ohci, ne2k_pci, vga-pci, unin_pci.c(u3-agp)
      x86_64-softmmu
        acpi_piix4.c, ide/piix.c, piix_pci.c
        -vga vmware vmware_vga.c
        -watchdog i6300esb wdt_i6300esb.c
        -usb usb-uhci.c
        -sound ac97 ac97.c
        -nic model=rtl8139 rtl8139.c
        -nic model=pcnet pcnet.c
        -balloon virtio virtio-pci.c:
      
      untested changes:
      The following changes aren't tested.
      prep_pci.c: ppc-softmmu -M prep should cover, but core dumped.
      unin_pci.c(uni-north-pci): the caller is commented out.
      openpic.c: the caller is commented out in ppc_prep.c
      Signed-off-by: NIsaku Yamahata <yamahata@valinux.co.jp>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      b80d4a98
  7. 01 7月, 2010 1 次提交
  8. 30 6月, 2010 1 次提交
  9. 26 4月, 2010 1 次提交
  10. 05 4月, 2010 1 次提交
  11. 11 2月, 2010 1 次提交
    • D
      audio streaming from usb devices · 8e65b7c0
      David S. Ahern 提交于
      I have streaming audio devices working within qemu-kvm. This is a port
      of the changes to qemu.
      
      Streaming audio generates a series of isochronous requests that are
      repetitive and time sensitive. The URBs need to be submitted in
      consecutive USB frames and responses need to be handled in a timely manner.
      
      Summary of the changes for isochronous requests:
      
      1. The initial 'valid' value is increased to 32. It needs to be higher
      than its current value of 10 since the host adds a 10 frame delay to the
      scheduling of the first request; if valid is set to 10 the first
      isochronous request times out and qemu cancels it. 32 was chosen as a
      nice round number, and it is used in the path where a TD-async pairing
      already exists.
      
      2. The token field in the TD is *not* unique for isochronous requests,
      so it is not a good choice for finding a matching async request. The
      buffer (where to write the guest data) is unique, so use that value instead.
      
      3. TD's for isochronous request need to be completed in the async
      completion handler so that data is pushed to the guest as soon as it is
      available. The uhci code currently attempts to process complete
      isochronous TDs the next time the UHCI frame with the request is
      processed. The results in lost data since the async requests will have
      long since timed out based on the valid parameter. Increasing the valid
      value is not acceptable as it introduces a 1+ second delay in the data
      getting pushed to the guest.
      
      4. The frame timer needs to be run on 1 msec intervals. Currently, the
      expire time for the processing the next frame is computed after the
      processing of each frame. This regularly causes the scheduling of frames
      to shift in time. When this happens the periodic scheduling of the
      requests is broken and the subsequent request is seen as a new request
      by the host resulting in a 10 msec delay (first isochronous request is
      scheduled for 10 frames from when the URB is submitted).
      
      [ For what's worth a small change is needed to the guest driver to have
      more outstanding URBs (at least 4 URBs with 5 packets per URB).]
      Signed-off-by: NDavid Ahern <daahern@cisco.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      8e65b7c0
  12. 07 2月, 2010 1 次提交
  13. 23 12月, 2009 1 次提交
  14. 12 12月, 2009 1 次提交
  15. 04 12月, 2009 1 次提交
  16. 01 12月, 2009 1 次提交
  17. 09 11月, 2009 2 次提交
  18. 07 11月, 2009 1 次提交
    • G
      v3: don't call reset functions on cpu initialization · c1699988
      Glauber Costa 提交于
      There is absolutely no need to call reset functions when initializing
      devices. Since we are already registering them, calling qemu_system_reset()
      should suffice. Actually, it is what happens when we reboot the machine,
      and using the same process instead of a special case semantics will even
      allow us to find bugs easier.
      
      Furthermore, the fact that we initialize things like the cpu quite early,
      leads to the need to introduce synchronization stuff like qemu_system_cond.
      This patch removes it entirely. All we need to do is call qemu_system_reset()
      only when we're already sure the system is up and running
      
      I tested it with qemu (with and without io-thread) and qemu-kvm, and it
      seems to be doing okay - although qemu-kvm uses a slightly different patch.
      
      [ v2: user mode still needs cpu_reset, so put it in ifdef. ]
      [ v3: leave qemu_system_cond for now. ]
      Signed-off-by: NGlauber Costa <glommer@redhat.com>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      c1699988
  19. 28 10月, 2009 2 次提交
  20. 05 10月, 2009 1 次提交
  21. 11 9月, 2009 1 次提交
  22. 10 9月, 2009 3 次提交
  23. 21 7月, 2009 1 次提交
  24. 30 6月, 2009 1 次提交
  25. 18 6月, 2009 1 次提交
  26. 17 6月, 2009 1 次提交
  27. 04 5月, 2009 1 次提交
  28. 06 2月, 2009 1 次提交
  29. 02 2月, 2009 1 次提交