1. 01 12月, 2009 1 次提交
  2. 23 11月, 2009 1 次提交
  3. 28 10月, 2009 3 次提交
  4. 19 10月, 2009 1 次提交
  5. 15 10月, 2009 1 次提交
  6. 12 10月, 2009 1 次提交
  7. 11 9月, 2009 2 次提交
    • C
      block: use fdatasync instead of fsync if possible · 6f1953c4
      Christoph Hellwig 提交于
      If we are flushing the caches for our image files we only care about the
      data (including the metadata required for accessing it) but not things
      like timestamp updates.  So try to use fdatasync instead of fsync to
      implement the flush operations.
      
      Unfortunately many operating systems still do not support fdatasync,
      so we add a qemu_fdatasync wrapper that uses fdatasync if available
      as per the _POSIX_SYNCHRONIZED_IO feature macro or fsync otherwise.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      6f1953c4
    • K
      Add bdrv_aio_multiwrite · 40b4f539
      Kevin Wolf 提交于
      One performance problem of qcow2 during the initial image growth are
      sequential writes that are not cluster aligned. In this case, when a first
      requests requires to allocate a new cluster but writes only to the first
      couple of sectors in that cluster, the rest of the cluster is zeroed - just
      to be overwritten by the following second request that fills up the cluster.
      
      Let's try to merge sequential write requests to the same cluster, so we can
      avoid to write the zero padding to the disk in the first place.
      
      As a nice side effect, also other formats take advantage of dealing with less
      and larger requests.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      40b4f539
  8. 15 8月, 2009 1 次提交
  9. 29 7月, 2009 1 次提交
  10. 28 7月, 2009 3 次提交
  11. 10 7月, 2009 1 次提交
  12. 02 7月, 2009 1 次提交
  13. 30 6月, 2009 1 次提交
    • 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
  14. 15 5月, 2009 3 次提交
  15. 14 5月, 2009 1 次提交
  16. 10 5月, 2009 1 次提交
  17. 25 4月, 2009 3 次提交
  18. 29 3月, 2009 1 次提交
  19. 13 3月, 2009 1 次提交
    • A
      DisplayAllocator interface (Stefano Stabellini) · 7b5d76da
      aliguori 提交于
      Hi all,
      this patch adds a DisplayAllocator interface that allows display
      frontends (sdl in particular) to provide a preallocated display buffer
      for the graphical backend to use.
      
      Whenever a graphical backend cannot use
      qemu_create_displaysurface_from because its own internal pixel format
      cannot be exported directly (text mode or graphical mode with color
      depth 8 or 24), it creates another display buffer in memory using
      qemu_create_displaysurface and does the conversion.
      This new buffer needs to be blitted into the sdl surface buffer every time
      we need to update portions of the screen.
      We can avoid this using the DisplayAllocator interace: sdl provides its
      own implementation of qemu_create_displaysurface, giving back the sdl
      surface buffer directly (as we used to do before the DisplayState
      changes).
      Since the buffer returned by sdl could be in bgr format we need to put
      back in the handlers of that case.
      
      This approach is good if the two following conditions are true:
      
      1) the sdl surface is a software surface that resides in main memory;
      
      2) the host display color depth is either 16 or 32 bpp.
      
      If first condition is false we can have bad performances using sdl
      and vnc together.
      If the second condition is false performances are certainly not going to
      improve but they shouldn't get worse either.
      
      The first condition is always true, at least on linux/X11 systems; but I
      believe is true also on other platforms.
      The second condition is true in the vast majority of the cases.
      
      This patch should also have the good side effect of solving the sdl
      2D slowness malc was reporting on MacOS, because SDL_BlitSurface is not
      going to be called anymore when the guest is in text mode or 24bpp.
      However the root problem is still present so I suspect we may
      still see some slowness on MacOS when the guest is in 32 or 16 bpp.
      Signed-off-by: NStefano Stabellini <stefano.stabellini@eu.citrix.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6839 c046a42c-6fe2-441c-8c8c-71466251a162
      7b5d76da
  20. 09 3月, 2009 1 次提交
  21. 06 3月, 2009 1 次提交
    • A
      monitor: Rework API (Jan Kiszka) · 376253ec
      aliguori 提交于
      Refactor the monitor API and prepare it for decoupled terminals:
      term_print functions are renamed to monitor_* and all monitor services
      gain a new parameter (mon) that will once refer to the monitor instance
      the output is supposed to appear on. However, the argument remains
      unused for now. All monitor command callbacks are also extended by a mon
      parameter so that command handlers are able to pass an appropriate
      reference to monitor output services.
      
      For the case that monitor outputs so far happen without clearly
      identifiable context, the global variable cur_mon is introduced that
      shall once provide a pointer either to the current active monitor (while
      processing commands) or to the default one. On the mid or long term,
      those use case will be obsoleted so that this variable can be removed
      again.
      
      Due to the broad usage of the monitor interface, this patch mostly deals
      with converting users of the monitor API. A few of them are already
      extended to pass 'mon' from the command handler further down to internal
      functions that invoke monitor_printf.
      
      At this chance, monitor-related prototypes are moved from console.h to
      a new monitor.h. The same is done for the readline API.
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6711 c046a42c-6fe2-441c-8c8c-71466251a162
      376253ec
  22. 06 2月, 2009 1 次提交
  23. 02 2月, 2009 1 次提交
  24. 27 1月, 2009 1 次提交
  25. 23 1月, 2009 1 次提交
  26. 16 1月, 2009 2 次提交
    • A
      DisplayState interface change (Stefano Stabellini) · 7d957bd8
      aliguori 提交于
      This patch changes the DisplayState interface adding support for
      multiple frontends at the same time (sdl and vnc) and implements most
      of the benefit of the shared_buf patch without the added complexity.
      
      Currently DisplayState is managed by sdl (or vnc) and sdl (or vnc) is
      also responsible for allocating the data and setting the depth.
      Vga.c (or another backend) will do any necessary conversion.
      
      The idea is to change it so that is vga.c (or another backend) together
      with console.c that fully manage the DisplayState interface allocating
      data and setting the depth (either 16 or 32 bit, if the guest uses a
      different resolution or is in text mode, vga.c (or another backend) is
      in charge of doing the conversion seamlessly).
      
      The other idea is that DisplayState supports *multiple* frontends
      like sdl and vnc; each of them can register some callbacks to be called
      when a display event occurs.
      
      The interesting changes are:
      
      - the new structures and related functions in console.h and console.c
      
      in particular the following functions are very helpful to manage a
      DisplaySurface:
      
      qemu_create_displaysurface
      qemu_resize_displaysurface
      qemu_create_displaysurface_from
      qemu_free_displaysurface
      
      - console_select and qemu_console_resize in console.c
      this two functions manage multiple consoles on a single host display
      
      - moving code around in hw/vga.c
      as for the shared_buf patch this is necessary to be able to handle a dynamic
      DisplaySurface bpp
      
      - changes to vga_draw_graphic in hw/vga.c
      this is the place where the DisplaySurface buffer is shared with the
      videoram, when possible;
      
      
      Compared to the last version the only changes are:
      
      - do not remove support to dpy_copy in cirrus_vga
      - change the name of the displaysurface handling functions
      Signed-off-by: NStefano Stabellini <stefano.stabellini@eu.citrix.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6336 c046a42c-6fe2-441c-8c8c-71466251a162
      7d957bd8
    • A
      Fix Windows build (Hervé Poussineau) · 02082dc9
      aliguori 提交于
      r6303 broke Windows build, where "noreturn" is a keyword used with __declspec.
      Attached patch fixes Windows build, by moving windows.h header inclusion before Qemu noreturn define.
      
      Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> 
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6330 c046a42c-6fe2-441c-8c8c-71466251a162
      02082dc9
  27. 15 1月, 2009 1 次提交
    • B
      Add noreturn function attribute · 7d99a001
      blueswir1 提交于
      Introduce noreturn attribute and attach it to cpu_loop_exit as well as
      interrupt/exception helpers for i386. This avoids a bunch of gcc4
      warnings.
      
      [ Note that this patch comes with a workaround to include qemu-common.h
      even in cases where is currently causes conflicts with dyngen-exec.h.
      I've been told that these conflicts will get resolved in the future
      (/me will try to have a look as well - as time permits). ]
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6303 c046a42c-6fe2-441c-8c8c-71466251a162
      7d99a001
  28. 12 12月, 2008 1 次提交
  29. 07 12月, 2008 1 次提交
  30. 06 12月, 2008 1 次提交