From fe3e7f2dc05225cdd2ba40defcd4e2581bebc5e0 Mon Sep 17 00:00:00 2001 From: Joel Martin Date: Wed, 16 May 2012 12:54:25 +0000 Subject: [PATCH 1/6] ui/vnc: Only report/use TIGHT_PNG encoding if enabled. If TIGHT_PNG is not enabled by the --enable-vnc-png configure flag then do not report to the client that it is supported. Also, since TIGHT_PNG is the same as the TIGHT encoding but with the filter/copy replaced with PNG data, adding it to the supported encodings list when it is disabled will cause the TIGHT encoding to be used even though the client requested TIGHT_PNG. Signed-off-by: Joel Martin Signed-off-by: Stefan Hajnoczi --- ui/vnc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ui/vnc.c b/ui/vnc.c index 33e6386a6e..66ae93010f 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -1806,10 +1806,12 @@ static void set_encodings(VncState *vs, int32_t *encodings, size_t n_encodings) vs->features |= VNC_FEATURE_TIGHT_MASK; vs->vnc_encoding = enc; break; +#ifdef CONFIG_VNC_PNG case VNC_ENCODING_TIGHT_PNG: vs->features |= VNC_FEATURE_TIGHT_PNG_MASK; vs->vnc_encoding = enc; break; +#endif case VNC_ENCODING_ZLIB: vs->features |= VNC_FEATURE_ZLIB_MASK; vs->vnc_encoding = enc; From 301592ea6f9c23d233fadc73124301d1305af13c Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Fri, 12 Oct 2012 18:59:44 +0100 Subject: [PATCH 2/6] targphys.h: Don't define target_phys_addr_t for user-mode emulators MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Commit 4be403c accidentally defined the target_phys_addr_t type when building user-mode emulators. Since the type doesn't really make any sense except for system emulators, avoid defining it when building in user mode. Signed-off-by: Peter Maydell Acked-by: Andreas Färber Signed-off-by: Stefan Hajnoczi --- targphys.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/targphys.h b/targphys.h index 08cade9096..50911fd12f 100644 --- a/targphys.h +++ b/targphys.h @@ -3,6 +3,8 @@ #ifndef TARGPHYS_H #define TARGPHYS_H +#ifndef CONFIG_USER_ONLY + #define TARGET_PHYS_ADDR_BITS 64 /* target_phys_addr_t is the type of a physical address (its size can be different from 'target_ulong'). */ @@ -18,3 +20,5 @@ typedef uint64_t target_phys_addr_t; #define TARGET_PRIXPHYS PRIX64 #endif + +#endif From 02c7ac0c0f00ce7fb259a0d68c2590a09adb73f4 Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Fri, 12 Oct 2012 19:07:23 +0100 Subject: [PATCH 3/6] target-arm/neon_helper: Remove obsolete FIXME comment Commit 33ebc29 fixed the bugs in the implementation of VQRSHL, but forgot to remove the FIXME comment... Signed-off-by: Peter Maydell Signed-off-by: Stefan Hajnoczi --- target-arm/neon_helper.c | 1 - 1 file changed, 1 deletion(-) diff --git a/target-arm/neon_helper.c b/target-arm/neon_helper.c index 8bb5129d6a..9aa920d2ac 100644 --- a/target-arm/neon_helper.c +++ b/target-arm/neon_helper.c @@ -788,7 +788,6 @@ uint64_t HELPER(neon_qshlu_s64)(CPUARMState *env, uint64_t valop, uint64_t shift return helper_neon_qshl_u64(env, valop, shiftop); } -/* FIXME: This is wrong. */ #define NEON_FN(dest, src1, src2) do { \ int8_t tmp; \ tmp = (int8_t)src2; \ From abab1a0f32e44cb4e6c317e24d1705f182b88cd0 Mon Sep 17 00:00:00 2001 From: Stefan Weil Date: Mon, 15 Oct 2012 07:45:40 +0200 Subject: [PATCH 4/6] configure: Remove unused parameters from main function This modification is required if compiler option -Wunused-parameter is activated. Signed-off-by: Stefan Weil Signed-off-by: Stefan Hajnoczi --- configure | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 353d7889f7..499ad811a0 100755 --- a/configure +++ b/configure @@ -1323,7 +1323,7 @@ if test -z "$cross_prefix" ; then # big/little endian test cat > $TMPC << EOF #include -int main(int argc, char ** argv){ +int main(void) { volatile uint32_t i=0x01234567; return (*((uint8_t*)(&i))) == 0x67; } @@ -2896,7 +2896,7 @@ static int sfaa(int *ptr) return __sync_fetch_and_and(ptr, 0); } -int main(int argc, char **argv) +int main(void) { int val = 42; sfaa(&val); From 08778b398328c4978e6e6bed023e37a3141dba84 Mon Sep 17 00:00:00 2001 From: Stefan Weil Date: Wed, 17 Oct 2012 19:53:50 +0200 Subject: [PATCH 5/6] net/tap-win32: Fix compiler warning caused by missing include statement MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The include file for net_init_tap was missing: net/tap-win32.c:703: warning: no previous prototype for ‘net_init_tap’ Signed-off-by: Stefan Weil Signed-off-by: Stefan Hajnoczi --- net/tap-win32.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/tap-win32.c b/net/tap-win32.c index f1801e22d2..22dad3f8fb 100644 --- a/net/tap-win32.c +++ b/net/tap-win32.c @@ -29,6 +29,7 @@ #include "tap.h" #include "qemu-common.h" +#include "clients.h" /* net_init_tap */ #include "net.h" #include "sysemu.h" #include "qemu-error.h" From 11f66978618b542986172a62fcd6acfa36c0d178 Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Thu, 18 Oct 2012 17:40:53 +0100 Subject: [PATCH 6/6] ui/vnc-jobs.c: Fix minor typos in comments Fix some minor typos/grammar errors in comments. Signed-off-by: Peter Maydell Reviewed-by: Stefan Weil Signed-off-by: Stefan Hajnoczi --- ui/vnc-jobs.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/ui/vnc-jobs.c b/ui/vnc-jobs.c index 087b84d319..3c592b3f3d 100644 --- a/ui/vnc-jobs.c +++ b/ui/vnc-jobs.c @@ -33,21 +33,21 @@ /* * Locking: * - * There is three levels of locking: + * There are three levels of locking: * - jobs queue lock: for each operation on the queue (push, pop, isEmpty?) * - VncDisplay global lock: mainly used for framebuffer updates to avoid * screen corruption if the framebuffer is updated - * while the worker is doing something. + * while the worker is doing something. * - VncState::output lock: used to make sure the output buffer is not corrupted - * if two threads try to write on it at the same time + * if two threads try to write on it at the same time * - * While the VNC worker thread is working, the VncDisplay global lock is hold - * to avoid screen corruptions (this does not block vnc_refresh() because it - * uses trylock()) but the output lock is not hold because the thread work on + * While the VNC worker thread is working, the VncDisplay global lock is held + * to avoid screen corruption (this does not block vnc_refresh() because it + * uses trylock()) but the output lock is not held because the thread works on * its own output buffer. * When the encoding job is done, the worker thread will hold the output lock * and copy its output buffer in vs->output. -*/ + */ struct VncJobQueue { QemuCond cond; @@ -62,7 +62,7 @@ typedef struct VncJobQueue VncJobQueue; /* * We use a single global queue, but most of the functions are - * already reetrant, so we can easilly add more than one encoding thread + * already reentrant, so we can easily add more than one encoding thread */ static VncJobQueue *queue;