Statistics
| Branch: | Revision:

root @ 3329f07b

# Date Author Comment
0ec0291d 08/23/2010 01:11 am Miguel Di Ciurcio Filho

QMP/monitor: update do_info_version() to output broken down version string

This code was originally developed by Daniel P. Berrange <>

Signed-off-by: Miguel Di Ciurcio Filho <>
Signed-off-by: Luiz Capitulino <>...

05705ce2 08/23/2010 01:11 am Luiz Capitulino

QMP doc: Add 'Stability Considerations' section

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

d29f3196 08/23/2010 01:11 am Luiz Capitulino

QMP: Update README file

A number of changes I prefer to do in one shot:

- Fix example
- Small clarifications
- Add multiple monitors example
- Add 'Development Process' section

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

916452df 08/23/2010 01:11 am Alex Williamson

VGA: Don't register deprecated VBE range

Old versions of the BOCHs VGA BIOS (cira 2003) made use of VBE
registers at 0xff80/81. In VBE API version 0xb0c2 these were
moved to 0x1ce/cf. Unfortunately, QEMU still registers handlers
for the old range. If a guest attempts to assign an I/O device...

dfe795e7 08/23/2010 01:11 am Gerd Hoffmann

QemuOpts: allow new option groups be registered at runtime.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

3329f07b 08/23/2010 01:11 am Gerd Hoffmann

QemuOpts: make most qemu_*_opts static

Switch tree to lookup-by-name using qemu_find_opts().
Also hook up virtfs options so qemu_find_opts works for them too.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

6597e1a6 08/23/2010 01:11 am Miguel Di Ciurcio Filho

QMP: update 'query-version' documentation

Update the documentation of 'query-version' to output the string version broken
down.

Signed-off-by: Miguel Di Ciurcio Filho <>
Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

ac71103d 08/23/2010 12:48 am Yoshiaki Tamura

vnc: check fd before calling qemu_set_fd_handler2() in vnc_client_write()

Setting fd = -1 to qemu_set_fd_handler2() causes bus error at FD_SET
in main_loop_wait().

Signed-off-by: Yoshiaki Tamura <>
Signed-off-by: Anthony Liguori <>

5ccaa4ce 08/23/2010 12:19 am Bernhard Kohl

pckbd: support for commands 0xf0-0xff: Pulse output bit

I have a guest OS which sends the command 0xfd to the keyboard
controller during initialization. To get rid of the message
"qemu: unsupported keyboard cmd=0x%02x\n" I added support for
the pulse output bit commands....

d20878d2 08/23/2010 12:19 am Yoshiaki Tamura

arch_init: replace tabs by spaces.

Signed-off-by: Yoshiaki Tamura <>
Signed-off-by: Anthony Liguori <>

9742bf26 08/23/2010 12:19 am Yoshiaki Tamura

exec: replace tabs by spaces.

Signed-off-by: Yoshiaki Tamura <>
Signed-off-by: Anthony Liguori <>

6977dfe6 08/23/2010 12:19 am Yoshiaki Tamura

exec: remove code duplication in qemu_ram_alloc() and qemu_ram_alloc_from_ptr()

Since most of the code in qemu_ram_alloc() and
qemu_ram_alloc_from_ptr() are duplicated, let
qemu_ram_alloc_from_ptr() to switch by checking void *host, and change
qemu_ram_alloc() to a wrapper....

583cd3cb 08/23/2010 12:19 am Adam Lackorzynski

target-i386: svm: Fix MSRPM check

Correct the calculation of the offset in the msrpm
for the MSR range 0 - 0x1fff.

Signed-off-by: Adam Lackorzynski <>
Signed-off-by: Anthony Liguori <>

8b53a865 08/23/2010 12:19 am Amit Shah

virtio-serial: Cleanup on device hot-unplug

Free malloc'ed memory, unregister from savevm and clean up virtio-common
bits on device hot-unplug.

This was found performing a migration after device hot-unplug.

Reported-by: <>
Signed-off-by: Amit Shah <>...

cc597832 08/21/2010 12:04 am Blue Swirl

Replace qemu_malloc + memset with qemu_mallocz

Replace a qemu_malloc call, followed by a memset, with qemu_mallocz.

Found with this Coccinelle semantic patch, adapted from
Coccinelle test package rule 94:
@
type T;
expression x;
expression E;
@

- x = (T)qemu_malloc(E)...

66fe09ee 08/21/2010 12:03 am Blue Swirl

Use ARRAY_SIZE macro

Replace array size calculations with ARRAY_SIZE macro.

Implemented with this Coccinelle semantic patch, adapted from
Linux kernel:
@
type T;
T[] E;
@

- (sizeof(E)/sizeof(*E))
+ ARRAY_SIZE(E)

@
type T;
T[] E;
@

- (sizeof(E)/sizeof(E[...]))...

f143efa6 08/19/2010 11:24 pm Blue Swirl

Remove useless NULL check for qemu_strdup return value

Found with this Coccinelle semantic patch:
@
expression E;
identifier ptr;
identifier fn ~= "qemu_strn?dup";
@

ptr = fn(E);
-if (ptr == NULL) { ... }

+ptr = fn(E);

Signed-off-by: Blue Swirl <>

8e00128d 08/19/2010 11:24 pm Blue Swirl

Remove useless NULL checks for qemu_malloc return value

Found with this Coccinelle semantic patch:
@
expression E;
identifier ptr;
identifier fn ~= "qemu_mallocz*";
@

ptr = fn(E);
-if (ptr == NULL) { ... }

+ptr = fn(E);

Signed-off-by: Blue Swirl <>

5e77aaa0 08/19/2010 04:44 pm Avi Kivity

QEMUFileBuffered: indicate that we're ready when the underlying file is ready

QEMUFileBuffered stops writing when the underlying QEMUFile is not ready,
and tells its producer so. However, when the underlying QEMUFile becomes
ready, it neglects to pass that information along, resulting in stoppage...

027c9e21 08/19/2010 04:44 pm Amit Shah

rtc: Remove TARGET_I386 from qemu-config.c, enables driftfix

qemu-config.c doesn't contain any target-specific code, and the
TARGET_I386 conditional code didn't get compiled as a result. Removing
this enables the driftfix parameter for rtc.

Signed-off-by: Amit Shah <>...

e447b1a6 08/19/2010 04:44 pm Marcelo Tosatti

set proper migration status on ->write error (v5)

If ->write fails, declare migration status as MIG_STATE_ERROR.

Also, in buffered_file.c, ->close the object in case of an
error.

Fixes "migrate -d "exec:dd of=file", where dd fails to open file.

Signed-off-by: Marcelo Tosatti <>...

760e77ea 08/19/2010 04:44 pm Alex Williamson

savevm: Reset last block info at beginning of each save

If we save more than once we need to reset the last block info or else
only the first save has the actual block info and each subsequent save
will only use continue flags, making them unloadable independently....

9fc391f8 08/15/2010 08:56 pm Artyom Tarasenko

sparc escc IUS improvements (SunOS 4.1.4 fix)

According to scc_escc_um.pdf:
- Reset Highest IUS must update irq status to allow processing
of the next priority interrupt.
- rx interrupt has always higher priority than tx on same channel

The documentation only explicitly says that Reset Highest IUS...

68c18d1c 08/15/2010 12:46 pm Blue Swirl

Fix mingw32 build

Don't define qemu_chr_open_eventfd() on Windows.

Signed-off-by: Blue Swirl <>

cdfb017e 08/15/2010 12:46 pm Stefan Weil

win32: Avoid compiler warning (WIN32_LEAN_AND_MEAN redefined)

configure adds the macro WIN32_LEAN_AND_MEAN to
QEMU_CFLAGS, and SDL_syswm.h defines it, too.

This results in a compiler warning (redefinition of
WIN32_LEAN_AND_MEAN in SDL_syswm.h. That warning prevents...

0a1574bb 08/15/2010 12:45 pm Stefan Weil

win32: Add missing function setenv

Mingw32 does not provide a declaration and implementation of function
setenv (which is used in sdl.c), so this patch adds both.

Signed-off-by: Stefan Weil <>
Signed-off-by: Blue Swirl <>

3dcbf8f9 08/15/2010 12:44 pm Cam Macdonell

Disable build of ivshmem on non-KVM systems

Signed-off-by: Cam Macdonell <>
Signed-off-by: Blue Swirl <>

1fd74012 08/15/2010 12:44 pm Cam Macdonell

Add kvm_set_ioeventfd_mmio_long definition for non-KVM systems

Signed-off-by: Cam Macdonell <>
Signed-off-by: Blue Swirl <>

b1d6d51d 08/14/2010 11:57 pm Andreas Färber

TCG: Revert ppc64 tcg_out_movi32 change

3b6dac34161bc0a342336072643c2f6d17e0ec45 apparently broke the ppc64 TCG target
compilation in the code path without guest base.

Reverting this line fixes the build.

Signed-off-by: Andreas F?rber <>...

e9119cd8 08/14/2010 11:40 pm Andreas Färber

TCG: Fix Darwin/ppc calling convention recognition

5da79c86a3744e3a901c7986c109dd06951befd2 broke compilation on Mac OS X v10.5 ppc.
Apple's GCC 4.0.1 does not define _CALL_DARWIN. Recognize APPLE again as well.

Signed-off-by: Andreas F?rber <>...

6cbf4c8c 08/11/2010 12:25 am Cam Macdonell

RESEND: Inter-VM shared memory PCI device

resend for bug fix related to removal of irqfd

Support an inter-vm shared memory device that maps a shared-memory object as a
PCI device in the guest. This patch also supports interrupts between guest by
communicating over a unix domain socket. This patch applies to the qemu-kvm...

84b89d78 08/11/2010 12:25 am Cam Macdonell

Add qemu_ram_alloc_from_ptr function

Provide a function to add an allocated region of memory to the qemu RAM.

This patch is copied from Marcelo's qemu_ram_map() in qemu-kvm and given the
clearer name qemu_ram_alloc_from_ptr().

Signed-off-by: Cam Macdonell <>...

b6828931 08/11/2010 12:25 am Cam Macdonell

Device specification for shared memory PCI device

Signed-off-by: Cam Macdonell <>
Signed-off-by: Anthony Liguori <>

44f1a3d8 08/11/2010 12:25 am Cam Macdonell

Add function to assign ioeventfd to MMIO.

Signed-off-by: Cam Macdonell <>
Signed-off-by: Anthony Liguori <>

24312968 08/11/2010 12:25 am Cam Macdonell

Support marking a device as non-migratable

A non-migratable device should be removed before migration and re-added after.

Signed-off-by: Cam Macdonell <>
Signed-off-by: Anthony Liguori <>

f040236c 08/09/2010 04:25 pm Anthony Liguori

Merge remote branch 'kwolf/for-anthony' into staging

a523eb06 08/09/2010 11:13 am Edgar E. Iglesias

microblaze: Fix the target version of stat64 struct

MicroBlaze needs TARGET_STAT64_HAS_BROKEN_ST_INO.

Signed-off-by: Edgar E. Iglesias <>

60592edd 08/07/2010 07:04 pm malc

audio/sdl: return on error

Signed-off-by: malc <>

138afb02 08/06/2010 01:21 pm Edgar E. Iglesias

mips: Add support for VInt and VEIC irq modes

Signed-off-by: Edgar E. Iglesias <>

d087bb3e 08/06/2010 12:15 pm malc

audio/sdl: be more anal about errors

Signed-off-by: malc <>

4b7c0418 08/06/2010 12:15 pm malc

audio: make audio_pt_init block all signals

Signed-off-by: malc <>

748a4ee3 08/04/2010 12:00 am Blue Swirl

sparc32: use FW_CFG_CMDLINE_SIZE

Add support for getting kernel command line size with
FW_CFG_CMDLINE_SIZE.

Signed-off-by: Blue Swirl <>

8a426614 08/03/2010 04:57 pm Kevin Wolf

block: Change bdrv_commit to handle multiple sectors at once

bdrv_commit copies the image to its backing file sector by sector, which
is (surprise!) relatively slow. Let's take a larger buffer and handle more
sectors at once if possible.

With a 1G qcow2 file, this brought the time bdrv_commit takes down from...

f0aa7a8b 08/03/2010 04:57 pm Miguel Di Ciurcio Filho

loadvm: improve tests before bdrv_snapshot_goto()

This patch improves the resilience of the load_vmstate() function, doing
further and better ordered tests.

In load_vmstate(), if there is any error on bdrv_snapshot_goto(), except if the
error is on VM state device, load_vmstate() will return zero and the VM will be...

bd0858bb 08/03/2010 04:57 pm Yoshiaki Tamura

block migration: replace tabs by spaces.

Signed-off-by: Yoshiaki Tamura <>
Signed-off-by: Kevin Wolf <>

336c1c12 08/03/2010 04:57 pm Kevin Wolf

block: Fix bdrv_has_zero_init

Assuming that any image on a block device is not properly zero-initialized is
actually wrong: Only raw images have this problem. Any other image format
shouldn't care about it, they initialize everything properly themselves....

4be9762a 08/03/2010 04:57 pm Markus Armbruster

block: Change bdrv_eject() not to drop the image

bdrv_eject() gets called when a device model opens or closes the tray.

If the block driver implements method bdrv_eject(), that method gets
called. Drivers host_cdrom implements it, and it opens and closes the...

953844d1 08/03/2010 04:57 pm Andrea Arcangeli

ide: Avoid canceling IDE DMA

The reason for not actually canceling the I/O is because with
virtualization and lots of VM running, a guest fs may mistake a
overload of the host, as an IDE timeout. So rather than canceling the
I/O, it's safer to wait I/O completion and simulate that the I/O has...

5933e8a9 08/02/2010 09:49 pm Artyom Tarasenko

fix last cpu timer initialization

The timer #0 is the system timer, so the timer #num_cpu is the
timer of the last CPU, and it must be initialized in slavio_timer_reset.

Don't mark non-existing timers as running.

Signed-off-by: Artyom Tarasenko <>...

ad7ee4ad 07/31/2010 10:43 pm Blue Swirl

Initialize a variable in all cases

Commit d167f9bc06a577d6c85b8ed6991c1efe175aae7d missed this one:
/src/qemu/ui/vnc-enc-tight.c:1483: warning: 'ret' may be used uninitialized in this function

Signed-off-by: Blue Swirl <>

aee474eb 07/31/2010 10:40 pm Blue Swirl

Fix uint8_t comparison with negative value

Commit 7bccf57383cca60a778d5c543ac80c9f62d89ef2 missed this one:
/src/qemu/ui/vnc-enc-tight.c: In function 'send_sub_rect':
/src/qemu/ui/vnc-enc-tight.c:1527: warning: comparison is always true due to limited range of data type...

3690cec8 07/31/2010 10:40 pm Blue Swirl

Fix a warning on OpenSolaris

Add a missing #include statement to avoid a warning:
/src/qemu/net/tap-solaris.c: In function 'tap_open':
/src/qemu/net/tap-solaris.c:189: warning: implicit declaration of function 'error_report'

Signed-off-by: Blue Swirl <>

671b0f36 07/31/2010 06:14 pm Hervé Poussineau

Correctly identify multiple cpus in SMP systems

Signed-off-by: Hervé Poussineau <>
Signed-off-by: Aurelien Jarno <>

cf7c00d5 07/31/2010 06:14 pm Hervé Poussineau

Remove unused constant

Remove unused constant MIPS_FCR0

Signed-off-by: Hervé Poussineau <>
Signed-off-by: Aurelien Jarno <>

14414da4 07/31/2010 06:14 pm Hervé Poussineau

jazz led: Fix debug prints

Add a macro to easily enable/disable debug prints
Also fix wrong printf formatters

Signed-off-by: Hervé Poussineau <>
Signed-off-by: Aurelien Jarno <>

872a91b4 07/31/2010 01:50 am Edgar E. Iglesias

xilinx-s3adsp: Add support for loading u-boot images.

Signed-off-by: Edgar E. Iglesias <>

811976dc 07/31/2010 01:42 am Edgar E. Iglesias

xilinx-s3adsp: Fix loading of raw binaries.

Set high to a word aligned address beyond loaded image.

Signed-off-by: Edgar E. Iglesias <>

708f2ada 07/31/2010 12:25 am Mike McCormack

Remove unused eventfd.h

This header is not present on my system and causes a build
failure, but is also not used in these files, so remove it.

Signed-off-by: Mike McCormack <>
Signed-off-by: Aurelien Jarno <>

8e84865e 07/31/2010 12:14 am Amit Shah

migration: Accept 'cont' only after successful incoming migration

When a 'cont' is issued on a VM that's just waiting for an incoming
migration, the VM reboots and boots into the guest, possibly corrupting
its storage since it could be shared with another VM running elsewhere....

7899f799 07/31/2010 12:09 am Isaku Yamahata

mips64el: fulong: PCI_DEVFN() clean up.

Use PCI_DEVFN() where appropriate.
The resulted stripped binary remains same
with/without thie patch.

Cc: Huacai Chen <>
Cc: Aurelien Jarno <>
Signed-off-by: Isaku Yamahata <>...

dca98169 07/31/2010 12:05 am Joel Schopp

remove pointless if from vl.c

We already set sockets to nonzero in the code above.
So this if statement always evaluates true. Remove it.

Signed-off-by: Joel Schopp <>
Signed-off-by: Aurelien Jarno <>

61bca294 07/31/2010 12:05 am Joel Schopp

remove dead code from hw/loader.c

Removing dead code. Above we already continued when
rom->addr + valuegreaterthan0 < addr so this condition is always false.

Signed-off-by: Joel Schopp <>
Signed-off-by: Aurelien Jarno <>

ca1d6ac6 07/31/2010 12:05 am Joel Schopp

fix variable type in qemu-io.c

The variable len can get a negative return value from cvtnum,
which we check for, but which is impossible with the current
unsigned variable type. Currently the if(len < 0) check is
pointless. This patch fixes that.

Signed-off-by: Joel Schopp <>...

69e58af9 07/31/2010 12:00 am Alex Williamson

savevm: Fix memory leak of compat struct

Forgot to check for and free these.

Found-by: Zachary Amsden <>
Signed-off-by: Alex Williamson <>
Signed-off-by: Aurelien Jarno <>

5ab4bb59 07/30/2010 11:59 pm Amit Shah

virtio-serial: Check if more max_ports specified than we can handle

Currently virtio-serial supports a maximum of 31 ports. Specifying the
'max_ports' parameter to be > 31 on the cmd line causes badness.

Ensure we initialise virtio-serial only if max_ports is within the...

cdc6f542 07/30/2010 10:12 pm Aurelien Jarno

Merge branch 'for-anthony' of git://repo.or.cz/qemu/kevin

  • 'for-anthony' of git://repo.or.cz/qemu/kevin:
    Fix -snapshot deleting images on disk change
    block: Use error codes from lower levels for error message
    block: default to 0 minimal / optiomal I/O size...
18e9ea8a 07/30/2010 10:09 pm Aurelien Jarno

linux-user: fix build on hosts not using guest base

Commit 68a1c816868b3e35a1da698af412b29e61b1948a broke qemu on hosts not
using guest base. It uses reserved_va unconditionally in mmap.c. To
avoid to many #ifdef #endif blocks, define RESERVED_VA as either...

5d5c9930 07/29/2010 07:54 pm Richard Henderson

linux-user: Protect against allocation failure in load_symbols.

Cc: malc <>
Signed-off-by: Richard Henderson <>
Signed-off-by: malc <>

58f5c1eb 07/29/2010 06:15 pm Edgar E. Iglesias

cris: Correct settls1 testcase.

Signed-off-by: Edgar E. Iglesias <>

61eb865a 07/29/2010 04:42 pm Edgar E. Iglesias

cris: Correct ADDO and ADDOQ testcases.

Verified on real HW.

Signed-off-by: Edgar E. Iglesias <>

9955ffac 07/29/2010 09:32 am Richard Henderson

linux-user: Reduce lseek+reads while loading elf files.

Define BPRM_BUF_SIZE to 1k and read that amount initially. If the
data we want from the binary is in this buffer, use it instead of
reading from the file again.

Signed-off-by: Richard Henderson <>...

28490231 07/29/2010 09:32 am Richard Henderson

linux-user: Define ELF_DATA generically.

The only consideration on this value is the target endianness.
The existing defines were incorrect for alpha and sh4eb.

Signed-off-by: Richard Henderson <>
Signed-off-by: Edgar E. Iglesias <>

991f8f0c 07/29/2010 09:32 am Richard Henderson

linux-user: Clean up byte-swapping in elfload.c.

Remove ifdefs from code by defining empty inline functions
when byte swapping isn't needed. Push loops over swapping
arrays of structures into the swapping functions.

Signed-off-by: Richard Henderson <>...

682674b8 07/29/2010 09:32 am Richard Henderson

linux-user: Load symbols from the interpreter.

First, adjust load_symbols to accept a load_bias parameter. At the same
time, read the entire section header table in one go, use pread instead
f lseek+read for the symbol and string tables, and properly free...

9058abdd 07/29/2010 09:32 am Richard Henderson

linux-user: Improve consistency checking in elf headers.

Validate more fields of the elf header. Extract those checks
into two common functions to be used in both load_elf_interp
and load_elf_binary.

Signed-off-by: Richard Henderson <>
Signed-off-by: Edgar E. Iglesias <>

60dcbcb5 07/29/2010 09:32 am Richard Henderson

linux-user: Put the stack guard page at the top.

There are no supported stack-grows-up targets. We were putting
the guard page at the highest address, i.e. the bottom of the stack.
Use the maximum of host and guest page size for the guard size.

Signed-off-by: Richard Henderson <>...

b9329d4b 07/29/2010 09:32 am Richard Henderson

linux-user: Remove partial support for a.out interpreters.

At the bottom of the a.out support was the unimplemented load_aout_interp
function. There were other portions of the support that didn't look
right; when I went to look in the Linux kernel for clarification, I found...

8e62a717 07/29/2010 09:32 am Richard Henderson

linux-user: Extract load_elf_image from load_elf_interp.

Moving toward a single copy of the elf binary loading code.
Fill in the details of the loaded image into a struct image_info.

Adjust create_elf_tables to read from such structures instead
of from a collection of passed arguments. Don't return error...

bf858897 07/29/2010 09:32 am Richard Henderson

linux-user: Re-use load_elf_image for the main binary.

This requires moving the PT_INTERP extraction and GUEST_BASE
handling into load_elf_image. Key this off a non-null pointer
argument to receive the interpreter name.

Signed-off-by: Richard Henderson <>...

cf129f3a 07/29/2010 09:32 am Richard Henderson

linux-user: Handle filesz < memsz for any PT_LOAD segment.

I caught padzero not properly initializing the .bss segment
on a statically linked Alpha program. Rather than a minimal
patch, replace the gross code with a single mmap+memset.

Share more code between load_elf_interp and load_elf_binary....

e167d46c 07/29/2010 09:32 am Richard Henderson

Add more DT_* and AT_* constants to qemu's copy of elf.h.

Moving some PPC AT_* constants from elfload.c at the same time.

Signed-off-by: Richard Henderson <>
Signed-off-by: Edgar E. Iglesias <>

d97ef72e 07/29/2010 09:32 am Richard Henderson

linux-user: Reindent elfload.c.

Signed-off-by: Richard Henderson <>
Signed-off-by: Edgar E. Iglesias <>

36500de6 07/28/2010 03:58 pm Anthony Liguori

Update version for 0.13.x

Signed-off-by: Anthony Liguori <>

249cdb42 07/27/2010 08:26 pm Blue Swirl

Fix mingw32 build

Fix mingw32 build errors like
/src/qemu/ui/vnc-enc-tight.c: In function 'tight_detect_smooth_image24':
/src/qemu/ui/vnc-enc-tight.c:119: error: 'uint' undeclared (first use in this function)

Replace 'uint' with proper 'unsigned int'.

Signed-off-by: Blue Swirl <>

d167f9bc 07/27/2010 06:34 pm Blue Swirl

Initialize a variable in all cases

Fix a warning with some GCCs:
/src/qemu/ui/vnc-enc-tight.c: In function `send_sub_rect_nojpeg':
/src/qemu/ui/vnc-enc-tight.c:1458: warning: `ret' might be used uninitialized in this function

Signed-off-by: Blue Swirl <>

7bccf573 07/27/2010 06:32 pm Blue Swirl

Fix uint8_t comparisons with negative values

Fix the following warnings:
/src/qemu/hw/ide/core.c: In function `ide_drive_pio_post_load':
/src/qemu/hw/ide/core.c:2767: warning: comparison is always false due to limited range of data type

/src/qemu/ui/vnc-enc-tight.c: In function `tight_detect_smooth_image':...

fd2f659e 07/27/2010 03:39 pm Anthony Liguori

Update version for 0.13.0-rc0

Signed-off-by: Anthony Liguori <>

5d8efe39 07/27/2010 01:36 am Corentin Chary

vnc: tight: don't forget do at the last color

While using indexed colors, the last color was never added to the palette.
Triggered with ubuntu livecd.

Signed-off-by: Corentin Chary <>
Signed-off-by: Anthony Liguori <>

d9c18c24 07/27/2010 01:36 am Corentin Chary

vnc: tight: remove a memleak in send_jpeg_rect()

buf was never freed.

Signed-off-by: Corentin Chary <>
Signed-off-by: Anthony Liguori <>

efe556ad 07/27/2010 01:36 am Corentin Chary

vnc: tight add PNG encoding

Introduce a new encoding: VNC_ENCODING_TIGHT_PNG [1] (-269) with a new
tight filter VNC_TIGHT_PNG (0x0A). When the client tells it supports the Tight PNG
encoding, the server will use tight, but will always send encoding pixels using...

3941bf6f 07/27/2010 01:36 am Corentin Chary

vnc: tight: specific zlib level and filters for each compression level

Disable png filters for lower compression levels. This should lower
the CPU consumption and reduce encoding time.

This isn't in tight_conf because:
  • tight_conf structure must not change, because it's shared with other...
5136a052 07/27/2010 01:36 am Corentin Chary

vnc: tight: stop using qdict for palette stuff

Profiling with callgrind seems to show that a lot of time is spent
in the palette code (mostly due to memory allocation and qdict to int
conversion).

This patch adds a VncPalette implementation. The palette is stored...

d1af0e05 07/27/2010 01:36 am Corentin Chary

vnc: encapsulate encoding members

This will allow to implement the threaded VNC server in a
more cleaner way.

Signed-off-by: Corentin Chary <>
Signed-off-by: Anthony Liguori <>

b5469b11 07/27/2010 01:36 am Corentin Chary

vnc: fix tight png memory leak

The tight.png buffer was never released.

Signed-off-by: Corentin Chary <>
Signed-off-by: Anthony Liguori <>

313b1d69 07/27/2010 01:36 am Corentin Chary

qemu-thread: add qemu_mutex/cond_destroy and qemu_mutex_exit

Add some missing functions in qemu-thread. Currently qemu-thread
is only used for io-thread but it will used by the vnc server soon
and we need those functions instead of calling pthread directly....

bd023f95 07/27/2010 01:36 am Corentin Chary

vnc: threaded VNC server

Implement a threaded VNC server using the producer-consumer model.
The main thread will push encoding jobs (a list a rectangles to update)
in a queue, and the VNC worker thread will consume that queue and send
framebuffer updates to the output buffer....

d01f9595 07/27/2010 01:36 am Corentin Chary

vnc: add missing lock for vnc_cursor_define()

All vnc_write() calls must be locked (except the ones present before
the protocol initialization).

Signed-off-by: Corentin Chary <>
Signed-off-by: Anthony Liguori <>

4043a013 07/27/2010 01:36 am Corentin Chary

vnc: tight: fix rgb_prepare_row

rgb_prepare_row bpp depends on the server display surface, not
the client.

Signed-off-by: Corentin Chary <>
Signed-off-by: Anthony Liguori <>

03817eb8 07/27/2010 01:36 am Corentin Chary

vnc: tight: split send_sub_rect

Split send_sub_rect in send_sub_rect_jpeg and send_sub_rect_nojpeg to
remove all these #ifdef CONFIG_JPEG.

Signed-off-by: Corentin Chary <>
Signed-off-by: Anthony Liguori <>

96763cf9 07/27/2010 01:36 am Corentin Chary

vnc: better default values for VNC options

vnc_jpeg and vnc_png are now "auto" by default, this means that
if the dependencies are installed (libjpeg or libpng), then they
will be enabled.

vnc_thread is disabled by default. It should be enabled by default...