--- qemu-kvm-0.13.0+noroms.orig/debian/qemu-debootstrap +++ qemu-kvm-0.13.0+noroms/debian/qemu-debootstrap @@ -71,7 +71,7 @@ if [ "`basename "$0"`" = "build-arm-chroot" ]; then deb_arch="armel" log "Setting Debian architecture to armel" - log "W:" "$0 is deprecated, please use qemu-debootstrap" + warn "$0 is deprecated, please use qemu-debootstrap" fi opts="" @@ -110,7 +110,9 @@ eval $stage=\"\$1\" args="$args $(escape "$1")" else - die "option %s may not be empty" "$stage" + if [ $stage != script ]; then + die "option %s may not be empty" "$stage" + fi fi shift ;; --- qemu-kvm-0.13.0+noroms.orig/debian/control +++ qemu-kvm-0.13.0+noroms/debian/control @@ -19,8 +19,8 @@ python, qemu-common (>= ${source:Version}) Provides: kvm, qemu -Conflicts: qemu (<< 0.11.0-0ubuntu5), kvm (<< 1:84+dfsg-0ubuntu16+0.11.0), kvm-data -Replaces: qemu, kvm (<< 1:84+dfsg-0ubuntu16+0.11.0), kvm-data +Conflicts: qemu (<< 0.11.0-0ubuntu5), kvm, kvm-data +Replaces: qemu, kvm, kvm-data Breaks: udev (<< 136-1) Description: Full virtualization on i386 and amd64 hardware Using KVM, one can run multiple virtual PCs, each running unmodified Linux or --- qemu-kvm-0.13.0+noroms.orig/debian/changelog +++ qemu-kvm-0.13.0+noroms/debian/changelog @@ -1,3 +1,27 @@ +qemu-kvm (0.13.0+noroms-0ubuntu4) natty; urgency=low + + * debian/patches/2000-vmmouse-adapt-to-mouse-handler-changes.patch, + debian/patches/series: apply changes from upstream to make mouse + work again, LP: #675749 + + -- Serge Hallyn Mon, 15 Nov 2010 21:34:37 -0600 + +qemu-kvm (0.13.0+noroms-0ubuntu3) natty; urgency=low + + * qemu-debootstrap: + - Allow for empty script argument; thanks Cody Somerville and + Michael Hudson. + - Fix bogus usage of log() instead of warn(); thanks Cody Somerville. + + -- Loïc Minier Thu, 11 Nov 2010 16:26:14 +0100 + +qemu-kvm (0.13.0+noroms-0ubuntu2) natty; urgency=low + + * debian/control: fix broken install/upgrades of kvm, LP: #673559, + versioned conflicts/replaces are not necessary + + -- Dustin Kirkland Wed, 10 Nov 2010 10:05:02 -0600 + qemu-kvm (0.13.0+noroms-0ubuntu1) natty; urgency=low * New upstream release --- qemu-kvm-0.13.0+noroms.orig/debian/patches/series +++ qemu-kvm-0.13.0+noroms/debian/patches/series @@ -3,3 +3,4 @@ larger_default_ram_size.patch Detect-and-use-GCC-atomic-builtins-for-locking.patch 1000-undo-earlier-static.patch +2000-vmmouse-adapt-to-mouse-handler-changes.patch --- qemu-kvm-0.13.0+noroms.orig/debian/patches/2000-vmmouse-adapt-to-mouse-handler-changes.patch +++ qemu-kvm-0.13.0+noroms/debian/patches/2000-vmmouse-adapt-to-mouse-handler-changes.patch @@ -0,0 +1,112 @@ +commit cd496926155afcb3b6323e70dd720dc118b3a255 +Author: Gerd Hoffmann +Date: Fri Oct 8 12:30:13 2010 +0200 + + vmmouse: adapt to mouse handler changes. + + This patch updates the vmmouse handler registration and activation. + + Old behavior: + vmmouse_read_id, vmmouse_request_relative and vmmouse_request_absolute + unregister the handler and re-register it. + + New behavior: + vmmouse_request_relative and vmmouse_request_absolute will unregister + the handler in case the mode did change. Then register and active the + handler with current mode if needed. + + Note that the old code never ever *activates* the handler, so the + vmmouse doesn't receive events. This trips up Fedora 14 for example: + Boot a default install without usb tablet, watch the X-Server activating + the vmmouse then, enjoy a non-functional mouse. + + Signed-off-by: Gerd Hoffmann + Signed-off-by: Anthony Liguori + +diff --git a/hw/vmmouse.c b/hw/vmmouse.c +index f359304..2097119 100644 +--- a/hw/vmmouse.c ++++ b/hw/vmmouse.c +@@ -100,16 +100,29 @@ static void vmmouse_mouse_event(void *opaque, int x, int y, int dz, int buttons_ + i8042_isa_mouse_fake_event(s->ps2_mouse); + } + +-static void vmmouse_update_handler(VMMouseState *s) ++static void vmmouse_remove_handler(VMMouseState *s) + { + if (s->entry) { + qemu_remove_mouse_event_handler(s->entry); + s->entry = NULL; + } +- if (s->status == 0) ++} ++ ++static void vmmouse_update_handler(VMMouseState *s, int absolute) ++{ ++ if (s->status != 0) { ++ return; ++ } ++ if (s->absolute != absolute) { ++ s->absolute = absolute; ++ vmmouse_remove_handler(s); ++ } ++ if (s->entry == NULL) { + s->entry = qemu_add_mouse_event_handler(vmmouse_mouse_event, + s, s->absolute, + "vmmouse"); ++ qemu_activate_mouse_event_handler(s->entry); ++ } + } + + static void vmmouse_read_id(VMMouseState *s) +@@ -121,28 +134,25 @@ static void vmmouse_read_id(VMMouseState *s) + + s->queue[s->nb_queue++] = VMMOUSE_VERSION; + s->status = 0; +- vmmouse_update_handler(s); + } + + static void vmmouse_request_relative(VMMouseState *s) + { + DPRINTF("vmmouse_request_relative()\n"); +- s->absolute = 0; +- vmmouse_update_handler(s); ++ vmmouse_update_handler(s, 0); + } + + static void vmmouse_request_absolute(VMMouseState *s) + { + DPRINTF("vmmouse_request_absolute()\n"); +- s->absolute = 1; +- vmmouse_update_handler(s); ++ vmmouse_update_handler(s, 1); + } + + static void vmmouse_disable(VMMouseState *s) + { + DPRINTF("vmmouse_disable()\n"); + s->status = 0xffff; +- vmmouse_update_handler(s); ++ vmmouse_remove_handler(s); + } + + static void vmmouse_data(VMMouseState *s, uint32_t *data, uint32_t size) +@@ -154,7 +164,7 @@ static void vmmouse_data(VMMouseState *s, uint32_t *data, uint32_t size) + if (size == 0 || size > 6 || size > s->nb_queue) { + printf("vmmouse: driver requested too much data %d\n", size); + s->status = 0xffff; +- vmmouse_update_handler(s); ++ vmmouse_remove_handler(s); + return; + } + +@@ -239,7 +249,8 @@ static int vmmouse_post_load(void *opaque, int version_id) + { + VMMouseState *s = opaque; + +- vmmouse_update_handler(s); ++ vmmouse_remove_handler(s); ++ vmmouse_update_handler(s, s->absolute); + return 0; + } +