- Update to 0.10.4
- Fix yet more qcow2 corruption (#498405) - AIO cancellation fixes (#497170) - Fix VPC image size overflow (#491981) - Fix oops with 2.6.25 virtio guest (#470386) - Enable pulseaudio driver (#495964, #496627) - Fix cpuid initialization - Fix HPET emulation - Fix storage hotplug error handling - Migration fixes - Block range checking fixes - Make PCI config status register read-only - Handle newer Xorg keymap names - Don't leak memory on NIC hot-unplug - Hook up keypad keys for qemu console emulation - Correctly run on kernels lacking mmu notifiers - Support DDIM option ROMs - Fix PCI NIC error handling - Fix in-kernel LAPIC initialization - Fix broken e1000 PCI config space - Drop some patches which have been upstreamed - Drop the make-release script; we have an official tarball now
This commit is contained in:
parent
c3836569ba
commit
35aa5183e5
|
@ -1 +1 @@
|
|||
qemu-kvm-0.10.tar.gz
|
||||
qemu-kvm-*.tar.gz
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Index: qemu-kvm-0.10/qemu/vnc.c
|
||||
Index: qemu-kvm-0.10.4/vnc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc.c
|
||||
--- qemu-kvm-0.10.4.orig/vnc.c
|
||||
+++ qemu-kvm-0.10.4/vnc.c
|
||||
@@ -2096,14 +2096,6 @@ static int protocol_client_vencrypt_auth
|
||||
VNC_DEBUG("Failed to complete TLS\n");
|
||||
return 0;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Index: qemu-kvm-0.10/qemu/vnc.c
|
||||
Index: qemu-kvm-0.10.4/vnc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10.4/vnc.c
|
||||
@@ -166,19 +166,136 @@ struct VncState
|
||||
static VncDisplay *vnc_display; /* needed for info vnc */
|
||||
static DisplayChangeListener *dcl;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Index: qemu-kvm-0.10/qemu/Makefile
|
||||
Index: qemu-kvm-0.10.4/Makefile
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/Makefile
|
||||
+++ qemu-kvm-0.10/qemu/Makefile
|
||||
+++ qemu-kvm-0.10.4/Makefile
|
||||
@@ -141,6 +141,7 @@ endif
|
||||
AUDIO_OBJS+= wavcapture.o
|
||||
OBJS+=$(addprefix audio/, $(AUDIO_OBJS))
|
||||
|
@ -31,10 +31,10 @@ Index: qemu-kvm-0.10/qemu/Makefile
|
|||
|
||||
bt-host.o: CFLAGS += $(CONFIG_BLUEZ_CFLAGS)
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/curses.c
|
||||
Index: qemu-kvm-0.10.4/curses.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/curses.c
|
||||
+++ qemu-kvm-0.10/qemu/curses.c
|
||||
+++ qemu-kvm-0.10.4/curses.c
|
||||
@@ -158,7 +158,6 @@ static void curses_cursor_position(Displ
|
||||
/* generic keyboard conversion */
|
||||
|
||||
|
@ -52,10 +52,10 @@ Index: qemu-kvm-0.10/qemu/curses.c
|
|||
if (!kbd_layout)
|
||||
exit(1);
|
||||
}
|
||||
Index: qemu-kvm-0.10/qemu/curses_keys.h
|
||||
Index: qemu-kvm-0.10.4/curses_keys.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/curses_keys.h
|
||||
+++ qemu-kvm-0.10/qemu/curses_keys.h
|
||||
+++ qemu-kvm-0.10.4/curses_keys.h
|
||||
@@ -21,6 +21,10 @@
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
|
@ -79,10 +79,10 @@ Index: qemu-kvm-0.10/qemu/curses_keys.h
|
|||
static const name2keysym_t name2keysym[] = {
|
||||
/* Plain ASCII */
|
||||
{ "space", 0x020 },
|
||||
Index: qemu-kvm-0.10/qemu/keymaps.c
|
||||
Index: qemu-kvm-0.10.4/keymaps.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/keymaps.c
|
||||
+++ qemu-kvm-0.10/qemu/keymaps.c
|
||||
+++ qemu-kvm-0.10.4/keymaps.c
|
||||
@@ -22,34 +22,20 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
@ -188,10 +188,10 @@ Index: qemu-kvm-0.10/qemu/keymaps.c
|
|||
{
|
||||
kbd_layout_t *k = kbd_layout;
|
||||
struct key_range *kr;
|
||||
Index: qemu-kvm-0.10/qemu/keymaps.h
|
||||
Index: qemu-kvm-0.10.4/keymaps.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/keymaps.h
|
||||
+++ qemu-kvm-0.10.4/keymaps.h
|
||||
@@ -0,0 +1,60 @@
|
||||
+/*
|
||||
+ * QEMU keysym to keycode conversion using rdesktop keymaps
|
||||
|
@ -253,10 +253,10 @@ Index: qemu-kvm-0.10/qemu/keymaps.h
|
|||
+int keysym_is_numlock(void *kbd_layout, int keysym);
|
||||
+
|
||||
+#endif /* __QEMU_KEYMAPS_H__ */
|
||||
Index: qemu-kvm-0.10/qemu/sdl.c
|
||||
Index: qemu-kvm-0.10.4/sdl.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/sdl.c
|
||||
+++ qemu-kvm-0.10/qemu/sdl.c
|
||||
+++ qemu-kvm-0.10.4/sdl.c
|
||||
@@ -109,7 +109,6 @@ static void sdl_resize(DisplayState *ds)
|
||||
/* generic keyboard conversion */
|
||||
|
||||
|
@ -274,10 +274,10 @@ Index: qemu-kvm-0.10/qemu/sdl.c
|
|||
if (!kbd_layout)
|
||||
exit(1);
|
||||
}
|
||||
Index: qemu-kvm-0.10/qemu/sdl_keysym.h
|
||||
Index: qemu-kvm-0.10.4/sdl_keysym.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/sdl_keysym.h
|
||||
+++ qemu-kvm-0.10/qemu/sdl_keysym.h
|
||||
+++ qemu-kvm-0.10.4/sdl_keysym.h
|
||||
@@ -1,7 +1,6 @@
|
||||
-typedef struct {
|
||||
- const char* name;
|
||||
|
@ -289,10 +289,10 @@ Index: qemu-kvm-0.10/qemu/sdl_keysym.h
|
|||
static const name2keysym_t name2keysym[]={
|
||||
/* ascii */
|
||||
{ "space", 0x020},
|
||||
Index: qemu-kvm-0.10/qemu/vnc.c
|
||||
Index: qemu-kvm-0.10.4/vnc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10.4/vnc.c
|
||||
@@ -35,7 +35,6 @@
|
||||
|
||||
#include "vnc.h"
|
||||
|
@ -313,10 +313,10 @@ Index: qemu-kvm-0.10/qemu/vnc.c
|
|||
|
||||
if (!vs->kbd_layout)
|
||||
exit(1);
|
||||
Index: qemu-kvm-0.10/qemu/vnc_keysym.h
|
||||
Index: qemu-kvm-0.10.4/vnc_keysym.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc_keysym.h
|
||||
+++ qemu-kvm-0.10/qemu/vnc_keysym.h
|
||||
+++ qemu-kvm-0.10.4/vnc_keysym.h
|
||||
@@ -1,7 +1,6 @@
|
||||
-typedef struct {
|
||||
- const char* name;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Index: qemu-kvm-0.10/qemu/vnc.c
|
||||
Index: qemu-kvm-0.10.4/vnc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10.4/vnc.c
|
||||
@@ -3,6 +3,7 @@
|
||||
*
|
||||
* Copyright (C) 2006 Anthony Liguori <anthony@codemonkey.ws>
|
||||
|
@ -141,10 +141,10 @@ Index: qemu-kvm-0.10/qemu/vnc.c
|
|||
|
||||
static VncDisplay *vnc_display; /* needed for info vnc */
|
||||
static DisplayChangeListener *dcl;
|
||||
Index: qemu-kvm-0.10/qemu/vnc.h
|
||||
Index: qemu-kvm-0.10.4/vnc.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.h
|
||||
+++ qemu-kvm-0.10/qemu/vnc.h
|
||||
+++ qemu-kvm-0.10.4/vnc.h
|
||||
@@ -1,5 +1,148 @@
|
||||
-#ifndef __VNCTIGHT_H
|
||||
-#define __VNCTIGHT_H
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Index: qemu-kvm-0.10/qemu/Makefile
|
||||
Index: qemu-kvm-0.10.4/Makefile
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/Makefile
|
||||
+++ qemu-kvm-0.10/qemu/Makefile
|
||||
+++ qemu-kvm-0.10.4/Makefile
|
||||
@@ -149,6 +149,9 @@ ifdef CONFIG_CURSES
|
||||
OBJS+=curses.o
|
||||
endif
|
||||
|
@ -30,10 +30,10 @@ Index: qemu-kvm-0.10/qemu/Makefile
|
|||
curses.o: curses.c keymaps.h curses_keys.h
|
||||
|
||||
bt-host.o: CFLAGS += $(CONFIG_BLUEZ_CFLAGS)
|
||||
Index: qemu-kvm-0.10/qemu/vnc-auth-vencrypt.c
|
||||
Index: qemu-kvm-0.10.4/vnc-auth-vencrypt.c
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/vnc-auth-vencrypt.c
|
||||
+++ qemu-kvm-0.10.4/vnc-auth-vencrypt.c
|
||||
@@ -0,0 +1,167 @@
|
||||
+/*
|
||||
+ * QEMU VNC display driver: VeNCrypt authentication setup
|
||||
|
@ -202,10 +202,10 @@ Index: qemu-kvm-0.10/qemu/vnc-auth-vencrypt.c
|
|||
+ vnc_read_when(vs, protocol_client_vencrypt_init, 2);
|
||||
+}
|
||||
+
|
||||
Index: qemu-kvm-0.10/qemu/vnc-auth-vencrypt.h
|
||||
Index: qemu-kvm-0.10.4/vnc-auth-vencrypt.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/vnc-auth-vencrypt.h
|
||||
+++ qemu-kvm-0.10.4/vnc-auth-vencrypt.h
|
||||
@@ -0,0 +1,33 @@
|
||||
+/*
|
||||
+ * QEMU VNC display driver
|
||||
|
@ -240,10 +240,10 @@ Index: qemu-kvm-0.10/qemu/vnc-auth-vencrypt.h
|
|||
+void start_auth_vencrypt(VncState *vs);
|
||||
+
|
||||
+#endif /* __QEMU_VNC_AUTH_VENCRYPT_H__ */
|
||||
Index: qemu-kvm-0.10/qemu/vnc-tls.c
|
||||
Index: qemu-kvm-0.10.4/vnc-tls.c
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/vnc-tls.c
|
||||
+++ qemu-kvm-0.10.4/vnc-tls.c
|
||||
@@ -0,0 +1,414 @@
|
||||
+/*
|
||||
+ * QEMU VNC display driver: TLS helpers
|
||||
|
@ -659,10 +659,10 @@ Index: qemu-kvm-0.10/qemu/vnc-tls.c
|
|||
+ return -1;
|
||||
+}
|
||||
+
|
||||
Index: qemu-kvm-0.10/qemu/vnc-tls.h
|
||||
Index: qemu-kvm-0.10.4/vnc-tls.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/vnc-tls.h
|
||||
+++ qemu-kvm-0.10.4/vnc-tls.h
|
||||
@@ -0,0 +1,70 @@
|
||||
+/*
|
||||
+ * QEMU VNC display driver. TLS helpers
|
||||
|
@ -734,10 +734,10 @@ Index: qemu-kvm-0.10/qemu/vnc-tls.h
|
|||
+
|
||||
+#endif /* __QEMU_VNC_TLS_H__ */
|
||||
+
|
||||
Index: qemu-kvm-0.10/qemu/vnc.c
|
||||
Index: qemu-kvm-0.10.4/vnc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10.4/vnc.c
|
||||
@@ -34,21 +34,6 @@
|
||||
#include "vnc_keysym.h"
|
||||
#include "d3des.h"
|
||||
|
@ -1513,10 +1513,10 @@ Index: qemu-kvm-0.10/qemu/vnc.c
|
|||
fprintf(stderr, "Failed to find x509 certificates/keys in %s\n", path);
|
||||
qemu_free(path);
|
||||
qemu_free(vs->display);
|
||||
Index: qemu-kvm-0.10/qemu/vnc.h
|
||||
Index: qemu-kvm-0.10.4/vnc.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.h
|
||||
+++ qemu-kvm-0.10/qemu/vnc.h
|
||||
+++ qemu-kvm-0.10.4/vnc.h
|
||||
@@ -32,13 +32,16 @@
|
||||
#include "audio/audio.h"
|
||||
#include <zlib.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Index: qemu-kvm-0.10/qemu/Makefile
|
||||
Index: qemu-kvm-0.10.4/Makefile
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/Makefile
|
||||
+++ qemu-kvm-0.10/qemu/Makefile
|
||||
+++ qemu-kvm-0.10.4/Makefile
|
||||
@@ -152,6 +152,9 @@ OBJS+=vnc.o d3des.o
|
||||
ifdef CONFIG_VNC_TLS
|
||||
OBJS+=vnc-tls.o vnc-auth-vencrypt.o
|
||||
|
@ -30,10 +30,10 @@ Index: qemu-kvm-0.10/qemu/Makefile
|
|||
curses.o: curses.c keymaps.h curses_keys.h
|
||||
|
||||
bt-host.o: CFLAGS += $(CONFIG_BLUEZ_CFLAGS)
|
||||
Index: qemu-kvm-0.10/qemu/Makefile.target
|
||||
Index: qemu-kvm-0.10.4/Makefile.target
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/Makefile.target
|
||||
+++ qemu-kvm-0.10/qemu/Makefile.target
|
||||
+++ qemu-kvm-0.10.4/Makefile.target
|
||||
@@ -613,6 +613,11 @@ CPPFLAGS += $(CONFIG_VNC_TLS_CFLAGS)
|
||||
LIBS += $(CONFIG_VNC_TLS_LIBS)
|
||||
endif
|
||||
|
@ -46,10 +46,10 @@ Index: qemu-kvm-0.10/qemu/Makefile.target
|
|||
ifdef CONFIG_BLUEZ
|
||||
LIBS += $(CONFIG_BLUEZ_LIBS)
|
||||
endif
|
||||
Index: qemu-kvm-0.10/qemu/configure
|
||||
Index: qemu-kvm-0.10.4/configure
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/configure
|
||||
+++ qemu-kvm-0.10/qemu/configure
|
||||
+++ qemu-kvm-0.10.4/configure
|
||||
@@ -164,6 +164,7 @@ fmod_lib=""
|
||||
fmod_inc=""
|
||||
oss_lib=""
|
||||
|
@ -126,10 +126,10 @@ Index: qemu-kvm-0.10/qemu/configure
|
|||
qemu_version=`head $source_path/VERSION`
|
||||
echo "VERSION=$qemu_version" >>$config_mak
|
||||
echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
|
||||
Index: qemu-kvm-0.10/qemu/qemu-doc.texi
|
||||
Index: qemu-kvm-0.10.4/qemu-doc.texi
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/qemu-doc.texi
|
||||
+++ qemu-kvm-0.10/qemu/qemu-doc.texi
|
||||
+++ qemu-kvm-0.10.4/qemu-doc.texi
|
||||
@@ -624,6 +624,21 @@ path following this option specifies whe
|
||||
be loaded from. See the @ref{vnc_security} section for details on generating
|
||||
certificates.
|
||||
|
@ -256,10 +256,10 @@ Index: qemu-kvm-0.10/qemu/qemu-doc.texi
|
|||
@node gdb_usage
|
||||
@section GDB usage
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/qemu.sasl
|
||||
Index: qemu-kvm-0.10.4/qemu.sasl
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/qemu.sasl
|
||||
+++ qemu-kvm-0.10.4/qemu.sasl
|
||||
@@ -0,0 +1,34 @@
|
||||
+# If you want to use the non-TLS socket, then you *must* include
|
||||
+# the GSSAPI or DIGEST-MD5 mechanisms, because they are the only
|
||||
|
@ -295,10 +295,10 @@ Index: qemu-kvm-0.10/qemu/qemu.sasl
|
|||
+
|
||||
+auxprop_plugin: sasldb
|
||||
+
|
||||
Index: qemu-kvm-0.10/qemu/vnc-auth-sasl.c
|
||||
Index: qemu-kvm-0.10.4/vnc-auth-sasl.c
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/vnc-auth-sasl.c
|
||||
+++ qemu-kvm-0.10.4/vnc-auth-sasl.c
|
||||
@@ -0,0 +1,626 @@
|
||||
+/*
|
||||
+ * QEMU VNC display driver: SASL auth protocol
|
||||
|
@ -926,10 +926,10 @@ Index: qemu-kvm-0.10/qemu/vnc-auth-sasl.c
|
|||
+}
|
||||
+
|
||||
+
|
||||
Index: qemu-kvm-0.10/qemu/vnc-auth-sasl.h
|
||||
Index: qemu-kvm-0.10.4/vnc-auth-sasl.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/vnc-auth-sasl.h
|
||||
+++ qemu-kvm-0.10.4/vnc-auth-sasl.h
|
||||
@@ -0,0 +1,67 @@
|
||||
+/*
|
||||
+ * QEMU VNC display driver: SASL auth protocol
|
||||
|
@ -998,10 +998,10 @@ Index: qemu-kvm-0.10/qemu/vnc-auth-sasl.h
|
|||
+
|
||||
+#endif /* __QEMU_VNC_AUTH_SASL_H__ */
|
||||
+
|
||||
Index: qemu-kvm-0.10/qemu/vnc-auth-vencrypt.c
|
||||
Index: qemu-kvm-0.10.4/vnc-auth-vencrypt.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc-auth-vencrypt.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc-auth-vencrypt.c
|
||||
+++ qemu-kvm-0.10.4/vnc-auth-vencrypt.c
|
||||
@@ -43,8 +43,15 @@ static void start_auth_vencrypt_subauth(
|
||||
start_auth_vnc(vs);
|
||||
break;
|
||||
|
@ -1029,10 +1029,10 @@ Index: qemu-kvm-0.10/qemu/vnc-auth-vencrypt.c
|
|||
|
||||
|
||||
static int protocol_client_vencrypt_auth(VncState *vs, uint8_t *data, size_t len)
|
||||
Index: qemu-kvm-0.10/qemu/vnc.c
|
||||
Index: qemu-kvm-0.10.4/vnc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10.4/vnc.c
|
||||
@@ -68,7 +68,8 @@ static char *addr_to_string(const char *
|
||||
return addr;
|
||||
}
|
||||
|
@ -1442,10 +1442,10 @@ Index: qemu-kvm-0.10/qemu/vnc.c
|
|||
if (reverse) {
|
||||
/* connect to viewer */
|
||||
if (strncmp(display, "unix:", 5) == 0)
|
||||
Index: qemu-kvm-0.10/qemu/vnc.h
|
||||
Index: qemu-kvm-0.10.4/vnc.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.h
|
||||
+++ qemu-kvm-0.10/qemu/vnc.h
|
||||
+++ qemu-kvm-0.10.4/vnc.h
|
||||
@@ -79,6 +79,10 @@ typedef struct VncDisplay VncDisplay;
|
||||
#include "vnc-tls.h"
|
||||
#include "vnc-auth-vencrypt.h"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Index: qemu-kvm-0.10/qemu/vnc-tls.c
|
||||
Index: qemu-kvm-0.10.4/vnc-tls.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc-tls.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc-tls.c
|
||||
+++ qemu-kvm-0.10.4/vnc-tls.c
|
||||
@@ -241,6 +241,22 @@ int vnc_tls_validate_certificate(struct
|
||||
return -1;
|
||||
}
|
||||
|
@ -33,10 +33,10 @@ Index: qemu-kvm-0.10/qemu/vnc-tls.c
|
|||
}
|
||||
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/vnc-tls.h
|
||||
Index: qemu-kvm-0.10.4/vnc-tls.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc-tls.h
|
||||
+++ qemu-kvm-0.10/qemu/vnc-tls.h
|
||||
+++ qemu-kvm-0.10.4/vnc-tls.h
|
||||
@@ -55,6 +55,9 @@ struct VncStateTLS {
|
||||
/* Whether data is being TLS encrypted yet */
|
||||
int wiremode;
|
||||
|
@ -47,10 +47,10 @@ Index: qemu-kvm-0.10/qemu/vnc-tls.h
|
|||
};
|
||||
|
||||
int vnc_tls_client_setup(VncState *vs, int x509Creds);
|
||||
Index: qemu-kvm-0.10/qemu/vnc.c
|
||||
Index: qemu-kvm-0.10.4/vnc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10.4/vnc.c
|
||||
@@ -156,6 +156,21 @@ static void do_info_vnc_client(VncState
|
||||
term_puts("Client:\n");
|
||||
term_puts(clientAddr);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Index: qemu-kvm-0.10/qemu/Makefile
|
||||
Index: qemu-kvm-0.10.4/Makefile
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/Makefile
|
||||
+++ qemu-kvm-0.10/qemu/Makefile
|
||||
+++ qemu-kvm-0.10.4/Makefile
|
||||
@@ -148,7 +148,7 @@ endif
|
||||
ifdef CONFIG_CURSES
|
||||
OBJS+=curses.o
|
||||
|
@ -24,10 +24,10 @@ Index: qemu-kvm-0.10/qemu/Makefile
|
|||
|
||||
vnc.o: CFLAGS += $(CONFIG_VNC_TLS_CFLAGS)
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/acl.c
|
||||
Index: qemu-kvm-0.10.4/acl.c
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/acl.c
|
||||
+++ qemu-kvm-0.10.4/acl.c
|
||||
@@ -0,0 +1,185 @@
|
||||
+/*
|
||||
+ * QEMU access control list management
|
||||
|
@ -214,10 +214,10 @@ Index: qemu-kvm-0.10/qemu/acl.c
|
|||
+ * tab-width: 8
|
||||
+ * End:
|
||||
+ */
|
||||
Index: qemu-kvm-0.10/qemu/acl.h
|
||||
Index: qemu-kvm-0.10.4/acl.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qemu-kvm-0.10/qemu/acl.h
|
||||
+++ qemu-kvm-0.10.4/acl.h
|
||||
@@ -0,0 +1,74 @@
|
||||
+/*
|
||||
+ * QEMU access control list management
|
||||
|
@ -293,10 +293,10 @@ Index: qemu-kvm-0.10/qemu/acl.h
|
|||
+ * tab-width: 8
|
||||
+ * End:
|
||||
+ */
|
||||
Index: qemu-kvm-0.10/qemu/configure
|
||||
Index: qemu-kvm-0.10.4/configure
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/configure
|
||||
+++ qemu-kvm-0.10/qemu/configure
|
||||
+++ qemu-kvm-0.10.4/configure
|
||||
@@ -913,6 +913,21 @@ EOF
|
||||
fi
|
||||
|
||||
|
@ -329,10 +329,10 @@ Index: qemu-kvm-0.10/qemu/configure
|
|||
qemu_version=`head $source_path/VERSION`
|
||||
echo "VERSION=$qemu_version" >>$config_mak
|
||||
echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
|
||||
Index: qemu-kvm-0.10/qemu/monitor.c
|
||||
Index: qemu-kvm-0.10.4/monitor.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/monitor.c
|
||||
+++ qemu-kvm-0.10/qemu/monitor.c
|
||||
+++ qemu-kvm-0.10.4/monitor.c
|
||||
@@ -39,6 +39,7 @@
|
||||
#include "qemu-timer.h"
|
||||
#include "migration.h"
|
||||
|
@ -461,10 +461,10 @@ Index: qemu-kvm-0.10/qemu/monitor.c
|
|||
+ * tab-width: 8
|
||||
+ * End:
|
||||
+ */
|
||||
Index: qemu-kvm-0.10/qemu/qemu-doc.texi
|
||||
Index: qemu-kvm-0.10.4/qemu-doc.texi
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/qemu-doc.texi
|
||||
+++ qemu-kvm-0.10/qemu/qemu-doc.texi
|
||||
+++ qemu-kvm-0.10.4/qemu-doc.texi
|
||||
@@ -639,6 +639,19 @@ ensures a data encryption preventing com
|
||||
credentials. See the @ref{vnc_security} section for details on using
|
||||
SASL authentication.
|
||||
|
@ -528,10 +528,10 @@ Index: qemu-kvm-0.10/qemu/qemu-doc.texi
|
|||
@item screendump @var{filename}
|
||||
Save screen into PPM image @var{filename}.
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/vnc-auth-sasl.c
|
||||
Index: qemu-kvm-0.10.4/vnc-auth-sasl.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc-auth-sasl.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc-auth-sasl.c
|
||||
+++ qemu-kvm-0.10.4/vnc-auth-sasl.c
|
||||
@@ -120,22 +120,32 @@ static int vnc_auth_sasl_check_access(Vn
|
||||
{
|
||||
const void *val;
|
||||
|
@ -568,10 +568,10 @@ Index: qemu-kvm-0.10/qemu/vnc-auth-sasl.c
|
|||
}
|
||||
|
||||
static int vnc_auth_sasl_check_ssf(VncState *vs)
|
||||
Index: qemu-kvm-0.10/qemu/vnc-auth-sasl.h
|
||||
Index: qemu-kvm-0.10.4/vnc-auth-sasl.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc-auth-sasl.h
|
||||
+++ qemu-kvm-0.10/qemu/vnc-auth-sasl.h
|
||||
+++ qemu-kvm-0.10.4/vnc-auth-sasl.h
|
||||
@@ -30,6 +30,9 @@
|
||||
#include <sasl/sasl.h>
|
||||
|
||||
|
@ -593,10 +593,10 @@ Index: qemu-kvm-0.10/qemu/vnc-auth-sasl.h
|
|||
void vnc_sasl_client_cleanup(VncState *vs);
|
||||
|
||||
long vnc_client_read_sasl(VncState *vs);
|
||||
Index: qemu-kvm-0.10/qemu/vnc-tls.c
|
||||
Index: qemu-kvm-0.10.4/vnc-tls.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc-tls.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc-tls.c
|
||||
+++ qemu-kvm-0.10.4/vnc-tls.c
|
||||
@@ -255,6 +255,25 @@ int vnc_tls_validate_certificate(struct
|
||||
gnutls_strerror (ret));
|
||||
return -1;
|
||||
|
@ -623,10 +623,10 @@ Index: qemu-kvm-0.10/qemu/vnc-tls.c
|
|||
}
|
||||
|
||||
gnutls_x509_crt_deinit (cert);
|
||||
Index: qemu-kvm-0.10/qemu/vnc-tls.h
|
||||
Index: qemu-kvm-0.10.4/vnc-tls.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc-tls.h
|
||||
+++ qemu-kvm-0.10/qemu/vnc-tls.h
|
||||
+++ qemu-kvm-0.10.4/vnc-tls.h
|
||||
@@ -31,6 +31,8 @@
|
||||
#include <gnutls/gnutls.h>
|
||||
#include <gnutls/x509.h>
|
||||
|
@ -644,10 +644,10 @@ Index: qemu-kvm-0.10/qemu/vnc-tls.h
|
|||
|
||||
/* Paths to x509 certs/keys */
|
||||
char *x509cacert;
|
||||
Index: qemu-kvm-0.10/qemu/vnc.c
|
||||
Index: qemu-kvm-0.10.4/vnc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10/qemu/vnc.c
|
||||
+++ qemu-kvm-0.10.4/vnc.c
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "sysemu.h"
|
||||
#include "qemu_socket.h"
|
||||
|
@ -693,10 +693,10 @@ Index: qemu-kvm-0.10/qemu/vnc.c
|
|||
/*
|
||||
* Combinations we support here:
|
||||
*
|
||||
Index: qemu-kvm-0.10/qemu/vnc.h
|
||||
Index: qemu-kvm-0.10.4/vnc.h
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/vnc.h
|
||||
+++ qemu-kvm-0.10/qemu/vnc.h
|
||||
+++ qemu-kvm-0.10.4/vnc.h
|
||||
@@ -98,6 +98,9 @@ struct VncDisplay
|
||||
int subauth; /* Used by VeNCrypt */
|
||||
VncDisplayTLS tls;
|
||||
|
|
|
@ -18,10 +18,10 @@ Signed-off-by: Glauber Costa <glommer@redhat.com>
|
|||
target-ppc/helper.c | 2 +-
|
||||
4 files changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/hw/ppc440.c
|
||||
Index: qemu-kvm-0.10.4/hw/ppc440.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/hw/ppc440.c
|
||||
+++ qemu-kvm-0.10/qemu/hw/ppc440.c
|
||||
+++ qemu-kvm-0.10.4/hw/ppc440.c
|
||||
@@ -18,6 +18,7 @@
|
||||
#include "ppc440.h"
|
||||
#include "ppc405.h"
|
||||
|
@ -30,10 +30,10 @@ Index: qemu-kvm-0.10/qemu/hw/ppc440.c
|
|||
#include "kvm.h"
|
||||
|
||||
#define PPC440EP_PCI_CONFIG 0xeec00000
|
||||
Index: qemu-kvm-0.10/qemu/hw/ppc440_bamboo.c
|
||||
Index: qemu-kvm-0.10.4/hw/ppc440_bamboo.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/hw/ppc440_bamboo.c
|
||||
+++ qemu-kvm-0.10/qemu/hw/ppc440_bamboo.c
|
||||
+++ qemu-kvm-0.10.4/hw/ppc440_bamboo.c
|
||||
@@ -21,6 +21,7 @@
|
||||
#include "boards.h"
|
||||
#include "sysemu.h"
|
||||
|
@ -42,10 +42,10 @@ Index: qemu-kvm-0.10/qemu/hw/ppc440_bamboo.c
|
|||
#include "kvm.h"
|
||||
#include "kvm_ppc.h"
|
||||
#include "device_tree.h"
|
||||
Index: qemu-kvm-0.10/qemu/hw/ppce500_mpc8544ds.c
|
||||
Index: qemu-kvm-0.10.4/hw/ppce500_mpc8544ds.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/hw/ppce500_mpc8544ds.c
|
||||
+++ qemu-kvm-0.10/qemu/hw/ppce500_mpc8544ds.c
|
||||
+++ qemu-kvm-0.10.4/hw/ppce500_mpc8544ds.c
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
#include <dirent.h>
|
||||
|
@ -54,10 +54,10 @@ Index: qemu-kvm-0.10/qemu/hw/ppce500_mpc8544ds.c
|
|||
#include "config.h"
|
||||
#include "qemu-common.h"
|
||||
#include "net.h"
|
||||
Index: qemu-kvm-0.10/qemu/target-ppc/helper.c
|
||||
Index: qemu-kvm-0.10.4/target-ppc/helper.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/target-ppc/helper.c
|
||||
+++ qemu-kvm-0.10/qemu/target-ppc/helper.c
|
||||
+++ qemu-kvm-0.10.4/target-ppc/helper.c
|
||||
@@ -29,6 +29,7 @@
|
||||
#include "exec-all.h"
|
||||
#include "helper_regs.h"
|
||||
|
|
64
make-release
64
make-release
|
@ -1,64 +0,0 @@
|
|||
#!/bin/bash -e
|
||||
|
||||
# Based on avi's scripts/make-release from kvm-userspace.git
|
||||
|
||||
usage()
|
||||
{
|
||||
echo "usage: make-release name kernel-dir kernel-commit user-dir user-commit"
|
||||
exit 1
|
||||
}
|
||||
|
||||
[ $# -eq 5 ] || usage
|
||||
|
||||
name="$1"
|
||||
kdir="$2"
|
||||
kcommit="$3"
|
||||
udir="$4"
|
||||
ucommit="$5"
|
||||
archs=(x86 ia64)
|
||||
|
||||
release_dir=$(mktemp -d)
|
||||
|
||||
tarball="$(pwd)/$name.tar.gz"
|
||||
|
||||
cd "${release_dir}"
|
||||
(cd "$udir"; git archive --format=tar --prefix="$name"/ "$ucommit") | tar x
|
||||
cd "$name"
|
||||
cat <<EOF > SOURCES
|
||||
kernel: $(cd "$kdir"; git rev-parse "$kcommit")
|
||||
userspace: $(cd "$udir"; git rev-parse "$ucommit")
|
||||
EOF
|
||||
|
||||
paths=(drivers/kvm virt/kvm)
|
||||
files=(kvm.h kvm_host.h kvm_para.h kvm_types.h kvm_x86_emulate.h virtext.h svm.h vmx.h)
|
||||
for file in "${files[@]}"; do
|
||||
for arch in "${archs[@]}"; do
|
||||
for variant in include/asm-"$arch" arch/"$arch"/include/asm; do
|
||||
paths+=("$variant"/"$file")
|
||||
done
|
||||
done
|
||||
paths+=(include/linux/"$file")
|
||||
done
|
||||
for arch in "${archs[@]}"; do
|
||||
paths+=(arch/"$arch"/kvm)
|
||||
done
|
||||
|
||||
(cd "$kdir"; git archive --format=tar --prefix=linux/ "$kcommit" "${paths[@]}") | tar x
|
||||
|
||||
touch kernel/config.kbuild
|
||||
echo ARCH=ia64 > config.mak
|
||||
make -C kernel sync LINUX=../linux version="$name" >/dev/null
|
||||
echo ARCH=x86_64 > config.mak
|
||||
make -C kernel sync LINUX=../linux version="$name" >/dev/null
|
||||
rm -rf config.mak linux kernel/config.kbuild
|
||||
#rm -rf kernel/include/asm kernel/include-compat/asm
|
||||
sed -i "s/kvm-devel/$name/" qemu/configure
|
||||
|
||||
cd ..
|
||||
|
||||
tar czf "$tarball" "$name"
|
||||
|
||||
cd $(dirname "$tarball")
|
||||
md5sum $(basename "$tarball")
|
||||
|
||||
rm -rf "${release_dir}"
|
|
@ -1,7 +1,7 @@
|
|||
diff --git a/bios/rombios.c b/bios/rombios.c
|
||||
diff --git a/kvm/bios/rombios.c b/kvm/bios/rombios.c
|
||||
index c4f6ccd..c4bfe60 100644
|
||||
--- a/bios/rombios.c
|
||||
+++ b/bios/rombios.c
|
||||
--- a/kvm/bios/rombios.c
|
||||
+++ b/kvm/bios/rombios.c
|
||||
@@ -10196,22 +10196,43 @@ no_serial:
|
||||
ret
|
||||
|
||||
|
|
|
@ -15,32 +15,18 @@ Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
|
|||
configure | 9 ++++++++-
|
||||
3 files changed, 10 insertions(+), 3 deletions(-)
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/Makefile
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/Makefile
|
||||
+++ qemu-kvm-0.10/qemu/Makefile
|
||||
@@ -256,7 +256,7 @@ endif
|
||||
install: all $(if $(BUILD_DOCS),install-doc)
|
||||
mkdir -p "$(DESTDIR)$(bindir)"
|
||||
ifneq ($(TOOLS),)
|
||||
- $(INSTALL) -m 755 -s $(TOOLS) "$(DESTDIR)$(bindir)"
|
||||
+ $(INSTALL) -m 755 $(STRIP_OPT) $(TOOLS) "$(DESTDIR)$(bindir)"
|
||||
endif
|
||||
ifneq ($(BLOBS),)
|
||||
mkdir -p "$(DESTDIR)$(datadir)"
|
||||
Index: qemu-kvm-0.10/qemu/configure
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/configure
|
||||
+++ qemu-kvm-0.10/qemu/configure
|
||||
@@ -154,6 +154,7 @@ case "$cpu" in
|
||||
esac
|
||||
diff -urNp qemu-kvm-0.10.4.orig/configure qemu-kvm-0.10.4/configure
|
||||
--- qemu-kvm-0.10.4.orig/configure 2009-05-12 21:40:25.000000000 +0100
|
||||
+++ qemu-kvm-0.10.4/configure 2009-05-12 21:42:34.000000000 +0100
|
||||
@@ -165,6 +165,7 @@ kvm_version() {
|
||||
|
||||
gprof="no"
|
||||
sparse="no"
|
||||
+strip_opt="yes"
|
||||
bigendian="no"
|
||||
mingw32="no"
|
||||
EXESUF=""
|
||||
@@ -403,6 +404,8 @@ for opt do
|
||||
@@ -416,6 +417,8 @@ for opt do
|
||||
;;
|
||||
--disable-sparse) sparse="no"
|
||||
;;
|
||||
|
@ -49,7 +35,7 @@ Index: qemu-kvm-0.10/qemu/configure
|
|||
--disable-vnc-tls) vnc_tls="no"
|
||||
;;
|
||||
--disable-vnc-sasl) vnc_sasl="no"
|
||||
@@ -556,6 +559,7 @@ echo " --install=INSTALL use spe
|
||||
@@ -571,6 +574,7 @@ echo " --install=INSTALL use spe
|
||||
echo " --static enable static build [$static]"
|
||||
echo " --enable-sparse enable sparse checker"
|
||||
echo " --disable-sparse disable sparse checker (default)"
|
||||
|
@ -57,7 +43,7 @@ Index: qemu-kvm-0.10/qemu/configure
|
|||
echo " --disable-werror disable compilation abort on warning"
|
||||
echo " --disable-sdl disable SDL"
|
||||
echo " --enable-cocoa enable COCOA (Mac OS X only)"
|
||||
@@ -1242,6 +1246,7 @@ echo "host big endian $bigendian"
|
||||
@@ -1258,6 +1262,7 @@ echo "host big endian $bigendian"
|
||||
echo "target list $target_list"
|
||||
echo "gprof enabled $gprof"
|
||||
echo "sparse enabled $sparse"
|
||||
|
@ -65,7 +51,7 @@ Index: qemu-kvm-0.10/qemu/configure
|
|||
echo "profiler $profiler"
|
||||
echo "static build $static"
|
||||
echo "-Werror enabled $werror"
|
||||
@@ -1318,7 +1323,6 @@ echo "INSTALL=$install" >> $config_mak
|
||||
@@ -1334,7 +1339,6 @@ echo "INSTALL=$install" >> $config_mak
|
||||
echo "CC=$cc" >> $config_mak
|
||||
echo "HOST_CC=$host_cc" >> $config_mak
|
||||
echo "AR=$ar" >> $config_mak
|
||||
|
@ -73,7 +59,7 @@ Index: qemu-kvm-0.10/qemu/configure
|
|||
# XXX: only use CFLAGS and LDFLAGS ?
|
||||
# XXX: should export HOST_CFLAGS and HOST_LDFLAGS for cross
|
||||
# compilation of dyngen tool (useful for win32 build on Linux host)
|
||||
@@ -1405,6 +1409,9 @@ if test "$sparse" = "yes" ; then
|
||||
@@ -1421,6 +1425,9 @@ if test "$sparse" = "yes" ; then
|
||||
echo "HOST_CC := REAL_CC=\"\$(HOST_CC)\" cgcc" >> $config_mak
|
||||
echo "CFLAGS += -Wbitwise -Wno-transparent-union -Wno-old-initializer -Wno-non-pointer-null" >> $config_mak
|
||||
fi
|
||||
|
@ -83,3 +69,50 @@ Index: qemu-kvm-0.10/qemu/configure
|
|||
if test "$bigendian" = "yes" ; then
|
||||
echo "WORDS_BIGENDIAN=yes" >> $config_mak
|
||||
echo "#define WORDS_BIGENDIAN 1" >> $config_h
|
||||
diff -urNp qemu-kvm-0.10.4.orig/configure.orig qemu-kvm-0.10.4/configure.orig
|
||||
--- qemu-kvm-0.10.4.orig/configure.orig 2009-05-12 21:40:25.000000000 +0100
|
||||
+++ qemu-kvm-0.10.4/configure.orig 2009-05-12 21:40:25.000000000 +0100
|
||||
@@ -942,6 +942,21 @@ EOF
|
||||
fi
|
||||
|
||||
##########################################
|
||||
+# fnmatch() probe, used for ACL routines
|
||||
+fnmatch="no"
|
||||
+cat > $TMPC << EOF
|
||||
+#include <fnmatch.h>
|
||||
+int main(void)
|
||||
+{
|
||||
+ fnmatch("foo", "foo", 0);
|
||||
+ return 0;
|
||||
+}
|
||||
+EOF
|
||||
+if $cc $ARCH_CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then
|
||||
+ fnmatch="yes"
|
||||
+fi
|
||||
+
|
||||
+##########################################
|
||||
# vde libraries probe
|
||||
if test "$vde" = "yes" ; then
|
||||
cat > $TMPC << EOF
|
||||
@@ -1517,6 +1532,9 @@ if test "$vnc_sasl" = "yes" ; then
|
||||
echo "CONFIG_VNC_SASL_LIBS=$vnc_sasl_libs" >> $config_mak
|
||||
echo "#define CONFIG_VNC_SASL 1" >> $config_h
|
||||
fi
|
||||
+if test "$fnmatch" = "yes" ; then
|
||||
+ echo "#define HAVE_FNMATCH_H 1" >> $config_h
|
||||
+fi
|
||||
qemu_version=`head $source_path/VERSION`
|
||||
echo "VERSION=$qemu_version" >>$config_mak
|
||||
echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
|
||||
diff -urNp qemu-kvm-0.10.4.orig/Makefile qemu-kvm-0.10.4/Makefile
|
||||
--- qemu-kvm-0.10.4.orig/Makefile 2009-05-12 21:40:25.000000000 +0100
|
||||
+++ qemu-kvm-0.10.4/Makefile 2009-05-12 21:42:34.000000000 +0100
|
||||
@@ -256,7 +256,7 @@ endif
|
||||
install: all $(if $(BUILD_DOCS),install-doc)
|
||||
mkdir -p "$(DESTDIR)$(bindir)"
|
||||
ifneq ($(TOOLS),)
|
||||
- $(INSTALL) -m 755 -s $(TOOLS) "$(DESTDIR)$(bindir)"
|
||||
+ $(INSTALL) -m 755 $(STRIP_OPT) $(TOOLS) "$(DESTDIR)$(bindir)"
|
||||
endif
|
||||
ifneq ($(BLOBS),)
|
||||
mkdir -p "$(DESTDIR)$(datadir)"
|
||||
|
|
|
@ -1,35 +0,0 @@
|
|||
From 9d1b494a2d5dd2c129994edcf4eb7630bb554964 Mon Sep 17 00:00:00 2001
|
||||
From: aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>
|
||||
Date: Tue, 7 Apr 2009 20:55:58 +0000
|
||||
Subject: [PATCH 1/1] Fix crash on resolution change -> screen dump -> vga redraw (Avi Kivity)
|
||||
|
||||
The vga screen dump function updates last_width and last_height,
|
||||
but does not change the DisplaySurface that these variables describe.
|
||||
A consequent vga_draw_graphic() will therefore fail to resize the
|
||||
surface and crash.
|
||||
|
||||
Fix by invalidating the display state after a screen dump, forcing
|
||||
vga_draw_graphic() to reallocate the DisplaySurface.
|
||||
|
||||
Signed-off-by: Avi Kivity <avi@redhat.com>
|
||||
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
|
||||
|
||||
|
||||
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7026 c046a42c-6fe2-441c-8c8c-71466251a162
|
||||
---
|
||||
qemu/hw/vga.c | 1 +
|
||||
1 files changed, 1 insertions(+), 0 deletions(-)
|
||||
|
||||
diff --git a/qemu/hw/vga.c b/qemu/hw/vga.c
|
||||
index b1e4373..4d1049b 100644
|
||||
--- a/qemu/hw/vga.c
|
||||
+++ b/qemu/hw/vga.c
|
||||
@@ -2678,4 +2678,5 @@ static void vga_screen_dump(void *opaque, const char *filename)
|
||||
vga_screen_dump_graphic(s, filename);
|
||||
else
|
||||
vga_screen_dump_text(s, filename);
|
||||
+ vga_invalidate_display(s);
|
||||
}
|
||||
--
|
||||
1.6.0.6
|
||||
|
|
@ -14,10 +14,10 @@ Signed-off-by: Avi Kivity <avi@redhat.com>
|
|||
user/test/x86/vmexit.c | 2 +-
|
||||
2 files changed, 17 insertions(+), 17 deletions(-)
|
||||
|
||||
Index: qemu-kvm-0.10/user/test/x86/apic.c
|
||||
Index: qemu-kvm-0.10.4/kvm/user/test/x86/apic.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/user/test/x86/apic.c
|
||||
+++ qemu-kvm-0.10/user/test/x86/apic.c
|
||||
--- qemu-kvm-0.10.4.orig/kvm/user/test/x86/apic.c
|
||||
+++ qemu-kvm-0.10.4/kvm/user/test/x86/apic.c
|
||||
@@ -54,14 +54,14 @@ asm (
|
||||
"push %r9 \n\t"
|
||||
"push %r8 \n\t"
|
||||
|
@ -64,10 +64,10 @@ Index: qemu-kvm-0.10/user/test/x86/apic.c
|
|||
#ifdef __x86_64__
|
||||
"pop %r8 \n\t"
|
||||
"pop %r9 \n\t"
|
||||
Index: qemu-kvm-0.10/user/test/x86/vmexit.c
|
||||
Index: qemu-kvm-0.10.4/kvm/user/test/x86/vmexit.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/user/test/x86/vmexit.c
|
||||
+++ qemu-kvm-0.10/user/test/x86/vmexit.c
|
||||
--- qemu-kvm-0.10.4.orig/kvm/user/test/x86/vmexit.c
|
||||
+++ qemu-kvm-0.10.4/kvm/user/test/x86/vmexit.c
|
||||
@@ -31,7 +31,7 @@ int main()
|
||||
|
||||
t1 = rdtsc();
|
||||
|
|
|
@ -1,45 +0,0 @@
|
|||
From d6ecb03610dba922cbfde42acb41603e2c658047 Mon Sep 17 00:00:00 2001
|
||||
From: Glauber Costa <glommer@redhat.com>
|
||||
Date: Fri, 8 May 2009 02:22:13 -0300
|
||||
Subject: [PATCH 2/2] reset state for load_linux
|
||||
|
||||
The linux loader is just an option rom like any other, just with
|
||||
some special requirements. Right now, our option rom resetting
|
||||
mechanism is not being applied to it. As a result, users using
|
||||
-kernel will not be able to successfully reboot their machines
|
||||
|
||||
This patch fixes it by saving all the data we generated in
|
||||
the load_linux() function, to be used later by the option rom
|
||||
resetting mechanism.
|
||||
|
||||
Signed-off-by: Glauber Costa <glommer@redhat.com>
|
||||
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
|
||||
---
|
||||
hw/pc.c | 7 +++++++
|
||||
1 files changed, 7 insertions(+), 0 deletions(-)
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/hw/pc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/hw/pc.c
|
||||
+++ qemu-kvm-0.10/qemu/hw/pc.c
|
||||
@@ -527,6 +527,7 @@ static void generate_bootsect(uint8_t *o
|
||||
rom[sizeof(rom) - 1] = -sum;
|
||||
|
||||
memcpy(option_rom, rom, sizeof(rom));
|
||||
+ option_rom_setup_reset(option_rom, sizeof (rom));
|
||||
}
|
||||
|
||||
static long get_file_size(FILE *f)
|
||||
@@ -694,6 +695,12 @@ static void load_linux(uint8_t *option_r
|
||||
memset(gpr, 0, sizeof gpr);
|
||||
gpr[4] = cmdline_addr-real_addr-16; /* SP (-16 is paranoia) */
|
||||
|
||||
+ option_rom_setup_reset(real_addr, setup_size);
|
||||
+ option_rom_setup_reset(prot_addr, kernel_size);
|
||||
+ option_rom_setup_reset(cmdline_addr, cmdline_size);
|
||||
+ if (initrd_filename)
|
||||
+ option_rom_setup_reset(initrd_addr, initrd_size);
|
||||
+
|
||||
generate_bootsect(option_rom, gpr, seg, 0);
|
||||
}
|
||||
|
|
@ -1,77 +0,0 @@
|
|||
From 2d2431f03fc78b532f3a1c5f858cf78859d50fc3 Mon Sep 17 00:00:00 2001
|
||||
From: aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>
|
||||
Date: Sun, 5 Apr 2009 17:40:58 +0000
|
||||
Subject: [PATCH] qcow2: fix image creation for large, > ~2TB, images (Chris Wright)
|
||||
|
||||
When creating large disk images w/ qcow2 format, qcow2_create is hard
|
||||
coded to creating a single refcount block. This is insufficient for
|
||||
large images, and will cause qemu-img to segfault as it walks off the
|
||||
end of the refcount block. Keep track of the space needed during image
|
||||
create and create proper number of refcount blocks accordingly.
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=491943
|
||||
|
||||
Signed-off-by: Chris Wright <chrisw@redhat.com>
|
||||
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
|
||||
|
||||
|
||||
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6982 c046a42c-6fe2-441c-8c8c-71466251a162
|
||||
---
|
||||
block-qcow2.c | 20 +++++++++++++-------
|
||||
1 files changed, 13 insertions(+), 7 deletions(-)
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/block-qcow2.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/block-qcow2.c
|
||||
+++ qemu-kvm-0.10/qemu/block-qcow2.c
|
||||
@@ -1458,6 +1458,7 @@ static int qcow_create(const char *filen
|
||||
const char *backing_file, int flags)
|
||||
{
|
||||
int fd, header_size, backing_filename_len, l1_size, i, shift, l2_bits;
|
||||
+ int ref_clusters = 0;
|
||||
QCowHeader header;
|
||||
uint64_t tmp, offset;
|
||||
QCowCreateState s1, *s = &s1;
|
||||
@@ -1498,22 +1499,28 @@ static int qcow_create(const char *filen
|
||||
offset += align_offset(l1_size * sizeof(uint64_t), s->cluster_size);
|
||||
|
||||
s->refcount_table = qemu_mallocz(s->cluster_size);
|
||||
- s->refcount_block = qemu_mallocz(s->cluster_size);
|
||||
|
||||
s->refcount_table_offset = offset;
|
||||
header.refcount_table_offset = cpu_to_be64(offset);
|
||||
header.refcount_table_clusters = cpu_to_be32(1);
|
||||
offset += s->cluster_size;
|
||||
-
|
||||
- s->refcount_table[0] = cpu_to_be64(offset);
|
||||
s->refcount_block_offset = offset;
|
||||
- offset += s->cluster_size;
|
||||
+
|
||||
+ /* count how many refcount blocks needed */
|
||||
+ tmp = offset >> s->cluster_bits;
|
||||
+ ref_clusters = (tmp >> (s->cluster_bits - REFCOUNT_SHIFT)) + 1;
|
||||
+ for (i=0; i < ref_clusters; i++) {
|
||||
+ s->refcount_table[i] = cpu_to_be64(offset);
|
||||
+ offset += s->cluster_size;
|
||||
+ }
|
||||
+
|
||||
+ s->refcount_block = qemu_mallocz(ref_clusters * s->cluster_size);
|
||||
|
||||
/* update refcounts */
|
||||
create_refcount_update(s, 0, header_size);
|
||||
create_refcount_update(s, s->l1_table_offset, l1_size * sizeof(uint64_t));
|
||||
create_refcount_update(s, s->refcount_table_offset, s->cluster_size);
|
||||
- create_refcount_update(s, s->refcount_block_offset, s->cluster_size);
|
||||
+ create_refcount_update(s, s->refcount_block_offset, ref_clusters * s->cluster_size);
|
||||
|
||||
/* write all the data */
|
||||
write(fd, &header, sizeof(header));
|
||||
@@ -1529,7 +1536,7 @@ static int qcow_create(const char *filen
|
||||
write(fd, s->refcount_table, s->cluster_size);
|
||||
|
||||
lseek(fd, s->refcount_block_offset, SEEK_SET);
|
||||
- write(fd, s->refcount_block, s->cluster_size);
|
||||
+ write(fd, s->refcount_block, ref_clusters * s->cluster_size);
|
||||
|
||||
qemu_free(s->refcount_table);
|
||||
qemu_free(s->refcount_block);
|
|
@ -1,67 +0,0 @@
|
|||
From: Nolan Leake <nolan <at> sigbus.net>
|
||||
Subject: [PATCH] Fix (at least one cause of) qcow2 corruption.
|
||||
|
||||
qcow2's get_cluster_offset() scans forward in the l2 table to find other
|
||||
clusters that have the same allocation status as the first cluster.
|
||||
This is used by (among others) qcow_is_allocated().
|
||||
|
||||
Unfortunately, it was not checking to be sure that it didn't fall off
|
||||
the end of the l2 table. This patch adds that check.
|
||||
|
||||
The symptom that motivated me to look into this was that
|
||||
bdrv_is_allocated() was returning false when there was in fact data
|
||||
there. This is one of many ways this bug could lead to data corruption.
|
||||
|
||||
I checked the other place that scans for consecutive unallocated blocks
|
||||
(alloc_cluster_offset()) and it appears to be OK:
|
||||
nb_clusters = MIN(nb_clusters, s->l2_size - l2_index);
|
||||
appears to prevent the same problem from occurring.
|
||||
|
||||
Signed-off-by: Nolan Leake <nolan <at> sigbus.net>
|
||||
|
||||
---
|
||||
|
||||
From: Kevin Wolf <kwolf@redhat.com>
|
||||
Subject: [PATCH] qcow2 corruption: Fix alloc_cluster_link_l2
|
||||
|
||||
This patch fixes a qcow2 corruption bug introduced in SVN Rev 5861. L2 tables
|
||||
are big endian, so entries must be converted before being passed to functions.
|
||||
|
||||
This bug is easy to trigger. The following script will create and destroy a
|
||||
qcow2 image (the header is gone after three loop iterations):
|
||||
|
||||
#!/bin/bash
|
||||
qemu-img create -f qcow2 test.qcow 1M
|
||||
for i in $(seq 1 10); do
|
||||
qemu-system-x86_64 -hda test.qcow -monitor stdio > /dev/null 2>&1 <<EOF
|
||||
savevm test-$i
|
||||
quit
|
||||
EOF
|
||||
done
|
||||
|
||||
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
|
||||
|
||||
diff -up qemu-kvm-0.10/qemu/block-qcow2.c.qcow2-corruption qemu-kvm-0.10/qemu/block-qcow2.c
|
||||
diff -up qemu-kvm-0.10/qemu/block-qcow2.c.qcow2-corruption qemu-kvm-0.10/qemu/block-qcow2.c
|
||||
--- qemu-kvm-0.10/qemu/block-qcow2.c.qcow2-corruption 2009-04-21 09:57:21.000000000 +0100
|
||||
+++ qemu-kvm-0.10/qemu/block-qcow2.c 2009-04-21 09:58:27.000000000 +0100
|
||||
@@ -670,6 +670,10 @@ static uint64_t get_cluster_offset(Block
|
||||
|
||||
nb_available = (nb_available >> 9) + index_in_cluster;
|
||||
|
||||
+ if (nb_needed > nb_available) {
|
||||
+ nb_needed = nb_available;
|
||||
+ }
|
||||
+
|
||||
cluster_offset = 0;
|
||||
|
||||
/* seek the the l2 offset in the l1 table */
|
||||
@@ -912,7 +916,7 @@ static int alloc_cluster_link_l2(BlockDr
|
||||
goto err;
|
||||
|
||||
for (i = 0; i < j; i++)
|
||||
- free_any_clusters(bs, old_cluster[i], 1);
|
||||
+ free_any_clusters(bs, be64_to_cpu(old_cluster[i]), 1);
|
||||
|
||||
ret = 0;
|
||||
err:
|
|
@ -0,0 +1,80 @@
|
|||
From cff8aa984290fc74c39f39e17fbca0f0feab6bc4 Mon Sep 17 00:00:00 2001
|
||||
From: Mark McLoughlin <markmc@redhat.com>
|
||||
Date: Wed, 13 May 2009 09:29:56 +0100
|
||||
Subject: [PATCH] kvm: user: include arch specific headers from $(KERNELDIR)
|
||||
|
||||
Currently we only include $(KERNELDIR)/include in CFLAGS,
|
||||
but we also have $(KERNELDIR)/arch/$(arch)/include or else
|
||||
we'll get mis-matched headers.
|
||||
|
||||
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
|
||||
---
|
||||
kvm/user/config-i386.mak | 1 -
|
||||
kvm/user/config-ia64.mak | 1 +
|
||||
kvm/user/config-powerpc.mak | 1 +
|
||||
kvm/user/config-x86-common.mak | 2 ++
|
||||
kvm/user/config-x86_64.mak | 1 -
|
||||
5 files changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/kvm/user/config-i386.mak b/kvm/user/config-i386.mak
|
||||
index 09175d5..eebb9de 100644
|
||||
--- a/kvm/user/config-i386.mak
|
||||
+++ b/kvm/user/config-i386.mak
|
||||
@@ -3,7 +3,6 @@ cstart.o = $(TEST_DIR)/cstart.o
|
||||
bits = 32
|
||||
ldarch = elf32-i386
|
||||
CFLAGS += -D__i386__
|
||||
-CFLAGS += -I $(KERNELDIR)/include
|
||||
|
||||
tests=
|
||||
|
||||
diff --git a/kvm/user/config-ia64.mak b/kvm/user/config-ia64.mak
|
||||
index c4c639e..e8803a0 100644
|
||||
--- a/kvm/user/config-ia64.mak
|
||||
+++ b/kvm/user/config-ia64.mak
|
||||
@@ -2,6 +2,7 @@ bits = 64
|
||||
CFLAGS += -m64
|
||||
CFLAGS += -D__ia64__
|
||||
CFLAGS += -I $(KERNELDIR)/include
|
||||
+CFLAGS += -I $(KERNELDIR)/arch/ia64/include
|
||||
|
||||
all:
|
||||
|
||||
diff --git a/kvm/user/config-powerpc.mak b/kvm/user/config-powerpc.mak
|
||||
index dd7ef54..589aa61 100644
|
||||
--- a/kvm/user/config-powerpc.mak
|
||||
+++ b/kvm/user/config-powerpc.mak
|
||||
@@ -1,4 +1,5 @@
|
||||
CFLAGS += -I $(KERNELDIR)/include
|
||||
+CFLAGS += -I $(KERNELDIR)/arch/powerpc/include
|
||||
CFLAGS += -Wa,-mregnames -I test/lib
|
||||
CFLAGS += -ffreestanding
|
||||
|
||||
diff --git a/kvm/user/config-x86-common.mak b/kvm/user/config-x86-common.mak
|
||||
index e789fd4..8d8fadf 100644
|
||||
--- a/kvm/user/config-x86-common.mak
|
||||
+++ b/kvm/user/config-x86-common.mak
|
||||
@@ -12,6 +12,8 @@ cflatobjs += \
|
||||
$(libcflat): LDFLAGS += -nostdlib
|
||||
$(libcflat): CFLAGS += -ffreestanding -I test/lib
|
||||
|
||||
+CFLAGS += -I $(KERNELDIR)/include
|
||||
+CFLAGS += -I $(KERNELDIR)/arch/x86/include
|
||||
CFLAGS += -m$(bits)
|
||||
|
||||
FLATLIBS = test/lib/libcflat.a $(libgcc)
|
||||
diff --git a/kvm/user/config-x86_64.mak b/kvm/user/config-x86_64.mak
|
||||
index b50b540..d88f54c 100644
|
||||
--- a/kvm/user/config-x86_64.mak
|
||||
+++ b/kvm/user/config-x86_64.mak
|
||||
@@ -3,7 +3,6 @@ cstart.o = $(TEST_DIR)/cstart64.o
|
||||
bits = 64
|
||||
ldarch = elf64-x86-64
|
||||
CFLAGS += -D__x86_64__
|
||||
-CFLAGS += -I $(KERNELDIR)/include
|
||||
|
||||
tests = $(TEST_DIR)/access.flat $(TEST_DIR)/irq.flat $(TEST_DIR)/sieve.flat \
|
||||
$(TEST_DIR)/simple.flat $(TEST_DIR)/stringio.flat \
|
||||
--
|
||||
1.6.0.6
|
||||
|
|
@ -1,64 +0,0 @@
|
|||
--- a/qemu/hw/pc.c 2009-05-12 10:53:18.000000000 -0300
|
||||
+++ b/qemu/hw/pc.c 2009-05-12 10:53:48.000000000 -0300
|
||||
@@ -58,6 +58,30 @@
|
||||
|
||||
#define MAX_IDE_BUS 2
|
||||
|
||||
+typedef struct rom_reset_data {
|
||||
+ uint8_t *data;
|
||||
+ target_phys_addr_t addr;
|
||||
+ unsigned size;
|
||||
+} RomResetData;
|
||||
+
|
||||
+static void option_rom_reset(void *_rrd)
|
||||
+{
|
||||
+ RomResetData *rrd = _rrd;
|
||||
+
|
||||
+ cpu_physical_memory_write_rom(rrd->addr, rrd->data, rrd->size);
|
||||
+}
|
||||
+
|
||||
+static void option_rom_setup_reset(target_phys_addr_t addr, unsigned size)
|
||||
+{
|
||||
+ RomResetData *rrd = qemu_malloc(sizeof *rrd);
|
||||
+
|
||||
+ rrd->data = qemu_malloc(size);
|
||||
+ cpu_physical_memory_read(addr, rrd->data, size);
|
||||
+ rrd->addr = addr;
|
||||
+ rrd->size = size;
|
||||
+ qemu_register_reset(option_rom_reset, rrd);
|
||||
+}
|
||||
+
|
||||
extern uint8_t *acpi_tables;
|
||||
extern size_t acpi_tables_len;
|
||||
|
||||
@@ -767,30 +791,6 @@ static void pc_init_ne2k_isa(NICInfo *nd
|
||||
nb_ne2k++;
|
||||
}
|
||||
|
||||
-typedef struct rom_reset_data {
|
||||
- uint8_t *data;
|
||||
- target_phys_addr_t addr;
|
||||
- unsigned size;
|
||||
-} RomResetData;
|
||||
-
|
||||
-static void option_rom_reset(void *_rrd)
|
||||
-{
|
||||
- RomResetData *rrd = _rrd;
|
||||
-
|
||||
- cpu_physical_memory_write_rom(rrd->addr, rrd->data, rrd->size);
|
||||
-}
|
||||
-
|
||||
-static void option_rom_setup_reset(target_phys_addr_t addr, unsigned size)
|
||||
-{
|
||||
- RomResetData *rrd = qemu_malloc(sizeof *rrd);
|
||||
-
|
||||
- rrd->data = qemu_malloc(size);
|
||||
- cpu_physical_memory_read(addr, rrd->data, size);
|
||||
- rrd->addr = addr;
|
||||
- rrd->size = size;
|
||||
- qemu_register_reset(option_rom_reset, rrd);
|
||||
-}
|
||||
-
|
||||
CPUState *pc_new_cpu(int cpu, const char *cpu_model, int pci_enabled)
|
||||
{
|
||||
CPUState *env = cpu_init(cpu_model);
|
|
@ -18,11 +18,10 @@ Signed-off-by: Glauber Costa <glommer@redhat.com>
|
|||
qemu/hw/pc.c | 2 +-
|
||||
1 files changed, 1 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/qemu/hw/pc.c b/qemu/hw/pc.c
|
||||
index cc84772..680d4a2 100644
|
||||
--- a/qemu/hw/pc.c
|
||||
+++ b/qemu/hw/pc.c
|
||||
@@ -919,7 +919,7 @@ vga_bios_error:
|
||||
diff -urp qemu-kvm-0.10.4.orig/hw/pc.c qemu-kvm-0.10.4/hw/pc.c
|
||||
--- qemu-kvm-0.10.4.orig/hw/pc.c 2009-05-12 22:48:08.000000000 +0100
|
||||
+++ qemu-kvm-0.10.4/hw/pc.c 2009-05-12 22:48:46.000000000 +0100
|
||||
@@ -927,7 +927,7 @@ vga_bios_error:
|
||||
exit(1);
|
||||
}
|
||||
/* Round up vga bios size to the next 2k boundary */
|
||||
|
@ -31,5 +30,4 @@ index cc84772..680d4a2 100644
|
|||
option_rom_start = 0xc0000 + vga_bios_size;
|
||||
|
||||
/* setup basic memory access */
|
||||
--
|
||||
1.5.6.6
|
||||
Only in qemu-kvm-0.10.4/hw: pc.c.orig
|
||||
|
|
|
@ -31,11 +31,10 @@ git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6896 c046a42c-6fe2-441c-8c8
|
|||
hw/pc.c | 29 +++++++++++++++++++----------
|
||||
1 files changed, 19 insertions(+), 10 deletions(-)
|
||||
|
||||
Index: qemu-kvm-0.10/qemu/hw/pc.c
|
||||
===================================================================
|
||||
--- qemu-kvm-0.10.orig/qemu/hw/pc.c
|
||||
+++ qemu-kvm-0.10/qemu/hw/pc.c
|
||||
@@ -813,7 +813,7 @@ static void pc_init1(ram_addr_t ram_size
|
||||
diff -urp qemu-kvm-0.10.4.orig/hw/pc.c qemu-kvm-0.10.4/hw/pc.c
|
||||
--- qemu-kvm-0.10.4.orig/hw/pc.c 2009-05-12 17:16:34.000000000 +0100
|
||||
+++ qemu-kvm-0.10.4/hw/pc.c 2009-05-12 22:46:38.000000000 +0100
|
||||
@@ -820,7 +820,7 @@ static void pc_init1(ram_addr_t ram_size
|
||||
{
|
||||
char buf[1024];
|
||||
int ret, linux_boot, i;
|
||||
|
@ -44,7 +43,7 @@ Index: qemu-kvm-0.10/qemu/hw/pc.c
|
|||
ram_addr_t below_4g_mem_size, above_4g_mem_size = 0;
|
||||
int bios_size, isa_bios_size, vga_bios_size;
|
||||
int pci_option_rom_offset;
|
||||
@@ -825,6 +825,7 @@ static void pc_init1(ram_addr_t ram_size
|
||||
@@ -832,6 +832,7 @@ static void pc_init1(ram_addr_t ram_size
|
||||
int index;
|
||||
BlockDriverState *hd[MAX_IDE_BUS * MAX_IDE_DEVS];
|
||||
BlockDriverState *fd[MAX_FD];
|
||||
|
@ -52,7 +51,7 @@ Index: qemu-kvm-0.10/qemu/hw/pc.c
|
|||
|
||||
if (ram_size >= 0xe0000000 ) {
|
||||
above_4g_mem_size = ram_size - 0xe0000000;
|
||||
@@ -900,7 +901,7 @@ static void pc_init1(ram_addr_t ram_size
|
||||
@@ -907,7 +908,7 @@ static void pc_init1(ram_addr_t ram_size
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
@ -61,7 +60,7 @@ Index: qemu-kvm-0.10/qemu/hw/pc.c
|
|||
/* VGA BIOS load */
|
||||
if (cirrus_vga_enabled) {
|
||||
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, VGABIOS_CIRRUS_FILENAME);
|
||||
@@ -918,12 +919,21 @@ vga_bios_error:
|
||||
@@ -925,12 +926,21 @@ vga_bios_error:
|
||||
fprintf(stderr, "qemu: could not load VGA BIOS '%s'\n", buf);
|
||||
exit(1);
|
||||
}
|
||||
|
@ -84,7 +83,7 @@ Index: qemu-kvm-0.10/qemu/hw/pc.c
|
|||
/* map the last 128KB of the BIOS in ISA space */
|
||||
isa_bios_size = bios_size;
|
||||
if (isa_bios_size > (128 * 1024))
|
||||
@@ -944,14 +954,14 @@ vga_bios_error:
|
||||
@@ -951,14 +961,14 @@ vga_bios_error:
|
||||
ram_addr_t option_rom_offset;
|
||||
int size, offset;
|
||||
|
||||
|
@ -92,17 +91,17 @@ Index: qemu-kvm-0.10/qemu/hw/pc.c
|
|||
+ offset = option_rom_start;
|
||||
if (linux_boot) {
|
||||
option_rom_offset = qemu_ram_alloc(TARGET_PAGE_SIZE);
|
||||
load_linux(phys_ram_base + option_rom_offset,
|
||||
load_linux(option_rom_offset,
|
||||
kernel_filename, initrd_filename, kernel_cmdline);
|
||||
- cpu_register_physical_memory(0xd0000, TARGET_PAGE_SIZE,
|
||||
+ cpu_register_physical_memory(option_rom_start, TARGET_PAGE_SIZE,
|
||||
option_rom_offset | IO_MEM_ROM);
|
||||
option_rom_offset);
|
||||
- offset = TARGET_PAGE_SIZE;
|
||||
+ offset += TARGET_PAGE_SIZE;
|
||||
+ offset = +TARGET_PAGE_SIZE;
|
||||
}
|
||||
|
||||
for (i = 0; i < nb_option_roms; i++) {
|
||||
@@ -961,13 +971,13 @@ vga_bios_error:
|
||||
@@ -968,13 +978,13 @@ vga_bios_error:
|
||||
option_rom[i]);
|
||||
exit(1);
|
||||
}
|
||||
|
@ -118,7 +117,7 @@ Index: qemu-kvm-0.10/qemu/hw/pc.c
|
|||
exit(1);
|
||||
}
|
||||
size = (size + 4095) & ~4095;
|
||||
@@ -975,9 +985,8 @@ vga_bios_error:
|
||||
@@ -982,9 +992,8 @@ vga_bios_error:
|
||||
initialization, and (optionally) marked readonly by the BIOS
|
||||
before INT 19h. See the PNPBIOS specification, appendix B.
|
||||
DDIM support is mandatory for proper PCI expansion ROM support. */
|
||||
|
|
163
qemu.spec
163
qemu.spec
|
@ -1,23 +1,16 @@
|
|||
Summary: QEMU is a FAST! processor emulator
|
||||
Name: qemu
|
||||
Version: 0.10
|
||||
Release: 18%{?dist}
|
||||
# I have mistakenly thought the revision name would be 1.0.
|
||||
# So 0.10 series get Epoch = 1
|
||||
Version: 0.10.4
|
||||
Release: 1%{?dist}
|
||||
# Epoch because we pushed a qemu-1.0 package
|
||||
Epoch: 2
|
||||
License: GPLv2+ and LGPLv2+ and BSD
|
||||
Group: Development/Tools
|
||||
URL: http://www.qemu.org/
|
||||
|
||||
# To re-create the tarball below:
|
||||
# $> git clone git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm.git
|
||||
# $> git clone git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm-userspace.git
|
||||
# $> make-release qemu-kvm-%{version}.tar.gz $(pwd)/kvm v2.6.29-6998-g1d0cdf1 \
|
||||
# $(pwd)/kvm-userspace kvm-84-196-ga01bd3f
|
||||
Source0: qemu-kvm-%{version}.tar.gz
|
||||
Source1: make-release
|
||||
Source2: qemu.init
|
||||
Source3: kvm.modules
|
||||
Source0: http://download.sourceforge.net/sourceforge/kvm/qemu-kvm-%{version}.tar.gz
|
||||
Source1: qemu.init
|
||||
Source2: kvm.modules
|
||||
|
||||
Patch1: 01-tls-handshake-fix.patch
|
||||
Patch2: 02-vnc-monitor-info.patch
|
||||
|
@ -34,16 +27,13 @@ Patch11: qemu-fix-gcc.patch
|
|||
Patch12: qemu-roms-more-room.patch
|
||||
Patch13: qemu-roms-more-room-fix-vga-align.patch
|
||||
Patch14: qemu-bios-bigger-roms.patch
|
||||
Patch15: qemu-fix-display-breakage.patch
|
||||
Patch16: qemu-fix-qcow2-2TB.patch
|
||||
Patch17: qemu-fix-qcow2-corruption.patch
|
||||
Patch18: qemu-move-option-rom-reset-definition.patch
|
||||
Patch19: qemu-fix-load-linux.patch
|
||||
Patch15: qemu-kvm-fix-kerneldir-includes.patch
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
BuildRequires: SDL-devel zlib-devel which texi2html gnutls-devel cyrus-sasl-devel
|
||||
BuildRequires: rsync dev86 iasl
|
||||
BuildRequires: pciutils-devel
|
||||
BuildRequires: pulseaudio-libs-devel
|
||||
Requires: %{name}-user = %{epoch}:%{version}-%{release}
|
||||
Requires: %{name}-system-x86 = %{epoch}:%{version}-%{release}
|
||||
Requires: %{name}-system-sparc = %{epoch}:%{version}-%{release}
|
||||
|
@ -85,7 +75,6 @@ This is a meta-package that provides a qemu-system-<arch> package for native
|
|||
architectures where kvm can be enabled. For example, in an x86 system, this
|
||||
will install qemu-system-x86
|
||||
|
||||
|
||||
%package img
|
||||
Summary: QEMU command line tool for manipulating disk images
|
||||
Group: Development/Tools
|
||||
|
@ -234,10 +223,6 @@ such as kvmtrace and kvm_stat.
|
|||
%patch13 -p1
|
||||
%patch14 -p1
|
||||
%patch15 -p1
|
||||
%patch16 -p1
|
||||
%patch17 -p1
|
||||
%patch18 -p1
|
||||
%patch19 -p1
|
||||
|
||||
%build
|
||||
# systems like rhel build system does not have a recent enough linker so
|
||||
|
@ -257,26 +242,28 @@ else
|
|||
fi
|
||||
|
||||
%ifarch %{ix86} x86_64
|
||||
# sdl outputs to alsa or pulseaudio directly depending on what the system has configured
|
||||
# sdl outputs to alsa or pulseaudio depending on system config, but it's broken (#495964)
|
||||
# alsa works, but causes huge CPU load due to bugs
|
||||
# oss works, but is very problematic because it grabs exclusive control of the device causing other apps to go haywire
|
||||
./configure --target-list=x86_64-softmmu \
|
||||
--kerneldir=$(pwd)/kernel --prefix=%{_prefix} \
|
||||
--audio-drv-list=sdl,alsa,oss \
|
||||
--with-patched-kernel \
|
||||
--prefix=%{_prefix} \
|
||||
--audio-drv-list=pa,sdl,alsa,oss \
|
||||
--disable-strip \
|
||||
--qemu-ldflags=$extraldflags \
|
||||
--qemu-cflags="$RPM_OPT_FLAGS"
|
||||
--extra-ldflags=$extraldflags \
|
||||
--extra-cflags="$RPM_OPT_FLAGS"
|
||||
|
||||
make V=1 %{?_smp_mflags} $buildldflags
|
||||
cp qemu/x86_64-softmmu/qemu-system-x86_64 qemu-kvm
|
||||
cp user/kvmtrace .
|
||||
cp user/kvmtrace_format .
|
||||
cp -a x86_64-softmmu/qemu-system-x86_64 qemu-kvm
|
||||
make clean
|
||||
|
||||
make -C kvm/extboot extboot.bin
|
||||
|
||||
cd kvm/user
|
||||
./configure --prefix=%{_prefix} --kerneldir=$(pwd)/../kernel/
|
||||
make kvmtrace
|
||||
cd ../../
|
||||
%endif
|
||||
|
||||
echo "%{name}-%{version}" > $(pwd)/kernel/.kernelrelease
|
||||
cd qemu
|
||||
./configure \
|
||||
--target-list="i386-softmmu x86_64-softmmu arm-softmmu cris-softmmu m68k-softmmu \
|
||||
mips-softmmu mipsel-softmmu mips64-softmmu mips64el-softmmu ppc-softmmu \
|
||||
|
@ -288,15 +275,13 @@ cd qemu
|
|||
sparc32plus-linux-user" \
|
||||
--prefix=%{_prefix} \
|
||||
--interp-prefix=%{_prefix}/qemu-%%M \
|
||||
--kerneldir=$(pwd)/../kernel --prefix=%{_prefix} \
|
||||
--disable-strip \
|
||||
--audio-drv-list=pa,sdl,alsa,oss \
|
||||
--disable-kvm \
|
||||
--disable-strip \
|
||||
--extra-ldflags=$extraldflags \
|
||||
--audio-drv-list=sdl,alsa,oss \
|
||||
--extra-cflags="$RPM_OPT_FLAGS"
|
||||
|
||||
|
||||
make %{?_smp_mflags} $buildldflags
|
||||
make V=1 %{?_smp_mflags} $buildldflags
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
@ -304,34 +289,34 @@ rm -rf $RPM_BUILD_ROOT
|
|||
%ifarch %{ix86} x86_64
|
||||
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/modules
|
||||
mkdir -p $RPM_BUILD_ROOT%{_bindir}/
|
||||
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}
|
||||
|
||||
install -m 0755 %{SOURCE3} $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/modules/kvm.modules
|
||||
install -m 0755 kvmtrace $RPM_BUILD_ROOT%{_bindir}/
|
||||
install -m 0755 kvmtrace_format $RPM_BUILD_ROOT%{_bindir}/
|
||||
install -m 0755 kvm_stat $RPM_BUILD_ROOT%{_bindir}/
|
||||
|
||||
install -m 0755 %{SOURCE1} $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/modules/kvm.modules
|
||||
install -m 0755 kvm/extboot/extboot.bin $RPM_BUILD_ROOT%{_datadir}/%{name}
|
||||
install -m 0755 kvm/user/kvmtrace $RPM_BUILD_ROOT%{_bindir}/
|
||||
install -m 0755 kvm/user/kvmtrace_format $RPM_BUILD_ROOT%{_bindir}/
|
||||
install -m 0755 kvm/kvm_stat $RPM_BUILD_ROOT%{_bindir}/
|
||||
install -m 0755 qemu-kvm $RPM_BUILD_ROOT%{_bindir}/
|
||||
%endif
|
||||
|
||||
cd qemu
|
||||
make prefix="${RPM_BUILD_ROOT}%{_prefix}" \
|
||||
bindir="${RPM_BUILD_ROOT}%{_bindir}" \
|
||||
sharedir="${RPM_BUILD_ROOT}%{_prefix}/share/qemu" \
|
||||
sharedir="${RPM_BUILD_ROOT}%{_datadir}/%{name}" \
|
||||
mandir="${RPM_BUILD_ROOT}%{_mandir}" \
|
||||
docdir="${RPM_BUILD_ROOT}%{_docdir}/%{name}-%{version}" \
|
||||
datadir="${RPM_BUILD_ROOT}%{_prefix}/share/qemu" install
|
||||
datadir="${RPM_BUILD_ROOT}%{_datadir}/%{name}" install
|
||||
chmod -x ${RPM_BUILD_ROOT}%{_mandir}/man1/*
|
||||
install -D -p -m 0755 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/qemu
|
||||
install -D -p -m 0644 -t ${RPM_BUILD_ROOT}/%{qemudocdir} Changelog README TODO COPYING COPYING.LIB LICENSE
|
||||
|
||||
install -D -p -m 0644 qemu.sasl $RPM_BUILD_ROOT%{_sysconfdir}/sasl2/qemu.conf
|
||||
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/share//qemu/pxe*bin
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/share//qemu/vgabios*bin
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/share//qemu/bios.bin
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/share//qemu/openbios-ppc
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/share//qemu/openbios-sparc32
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/share//qemu/openbios-sparc64
|
||||
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/pxe*bin
|
||||
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/vgabios*bin
|
||||
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/bios.bin
|
||||
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/openbios-ppc
|
||||
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/openbios-sparc32
|
||||
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/openbios-sparc64
|
||||
|
||||
# the pxe etherboot images will be symlinks to the images on
|
||||
# /usr/share/etherboot, as QEMU doesn't know how to look
|
||||
|
@ -345,14 +330,12 @@ pxe_link ne2k_pci ne
|
|||
pxe_link pcnet pcnet32
|
||||
pxe_link rtl8139 rtl8139
|
||||
pxe_link virtio virtio-net
|
||||
ln -s ../vgabios/VGABIOS-lgpl-latest.bin %{buildroot}/%{_prefix}/share/qemu/vgabios.bin
|
||||
ln -s ../vgabios/VGABIOS-lgpl-latest.cirrus.bin %{buildroot}/%{_prefix}/share/qemu/vgabios-cirrus.bin
|
||||
ln -s ../bochs/BIOS-bochs-kvm %{buildroot}/%{_prefix}/share/qemu/bios.bin
|
||||
ln -s ../openbios/openbios-ppc %{buildroot}/%{_prefix}/share/qemu/openbios-ppc
|
||||
ln -s ../openbios/openbios-sparc32 %{buildroot}/%{_prefix}/share/qemu/openbios-sparc32
|
||||
ln -s ../openbios/openbios-sparc64 %{buildroot}/%{_prefix}/share/qemu/openbios-sparc64
|
||||
|
||||
|
||||
ln -s ../vgabios/VGABIOS-lgpl-latest.bin %{buildroot}/%{_datadir}/%{name}/vgabios.bin
|
||||
ln -s ../vgabios/VGABIOS-lgpl-latest.cirrus.bin %{buildroot}/%{_datadir}/%{name}/vgabios-cirrus.bin
|
||||
ln -s ../bochs/BIOS-bochs-kvm %{buildroot}/%{_datadir}/%{name}/bios.bin
|
||||
ln -s ../openbios/openbios-ppc %{buildroot}/%{_datadir}/%{name}/openbios-ppc
|
||||
ln -s ../openbios/openbios-sparc32 %{buildroot}/%{_datadir}/%{name}/openbios-sparc32
|
||||
ln -s ../openbios/openbios-sparc64 %{buildroot}/%{_datadir}/%{name}/openbios-sparc64
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
@ -394,8 +377,8 @@ fi
|
|||
%doc %{qemudocdir}/COPYING
|
||||
%doc %{qemudocdir}/COPYING.LIB
|
||||
%doc %{qemudocdir}/LICENSE
|
||||
%dir %{_prefix}/share/qemu/
|
||||
%{_prefix}/share/qemu/keymaps/
|
||||
%dir %{_datadir}/%{name}/
|
||||
%{_datadir}/%{name}/keymaps/
|
||||
%{_mandir}/man1/qemu.1*
|
||||
%{_mandir}/man8/qemu-nbd.8*
|
||||
%{_bindir}/qemu-nbd
|
||||
|
@ -424,16 +407,16 @@ fi
|
|||
%defattr(-,root,root)
|
||||
%{_bindir}/qemu
|
||||
%{_bindir}/qemu-system-x86_64
|
||||
%{_prefix}/share/qemu/bios.bin
|
||||
%{_prefix}/share/qemu/vgabios.bin
|
||||
%{_prefix}/share/qemu/vgabios-cirrus.bin
|
||||
%{_prefix}/share/qemu/pxe-e1000.bin
|
||||
%{_prefix}/share/qemu/pxe-virtio.bin
|
||||
%{_prefix}/share/qemu/pxe-pcnet.bin
|
||||
%{_prefix}/share/qemu/pxe-rtl8139.bin
|
||||
%{_prefix}/share/qemu/pxe-ne2k_pci.bin
|
||||
%{_datadir}/%{name}/bios.bin
|
||||
%{_datadir}/%{name}/vgabios.bin
|
||||
%{_datadir}/%{name}/vgabios-cirrus.bin
|
||||
%{_datadir}/%{name}/pxe-e1000.bin
|
||||
%{_datadir}/%{name}/pxe-virtio.bin
|
||||
%{_datadir}/%{name}/pxe-pcnet.bin
|
||||
%{_datadir}/%{name}/pxe-rtl8139.bin
|
||||
%{_datadir}/%{name}/pxe-ne2k_pci.bin
|
||||
%ifarch %{ix86} x86_64
|
||||
%{_prefix}/share/qemu/extboot.bin
|
||||
%{_datadir}/%{name}/extboot.bin
|
||||
%{_bindir}/qemu-kvm
|
||||
%{_sysconfdir}/sysconfig/modules/kvm.modules
|
||||
%files kvm-tools
|
||||
|
@ -445,8 +428,8 @@ fi
|
|||
%files system-sparc
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/qemu-system-sparc
|
||||
%{_prefix}/share/qemu/openbios-sparc32
|
||||
%{_prefix}/share/qemu/openbios-sparc64
|
||||
%{_datadir}/%{name}/openbios-sparc32
|
||||
%{_datadir}/%{name}/openbios-sparc64
|
||||
%files system-arm
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/qemu-system-arm
|
||||
|
@ -461,10 +444,10 @@ fi
|
|||
%{_bindir}/qemu-system-ppc
|
||||
%{_bindir}/qemu-system-ppc64
|
||||
%{_bindir}/qemu-system-ppcemb
|
||||
%{_prefix}/share/qemu/openbios-ppc
|
||||
%{_prefix}/share/qemu/video.x
|
||||
%{_prefix}/share/qemu/bamboo.dtb
|
||||
%{_prefix}/share/qemu/ppc_rom.bin
|
||||
%{_datadir}/%{name}/openbios-ppc
|
||||
%{_datadir}/%{name}/video.x
|
||||
%{_datadir}/%{name}/bamboo.dtb
|
||||
%{_datadir}/%{name}/ppc_rom.bin
|
||||
%files system-cris
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/qemu-system-cris
|
||||
|
@ -482,6 +465,30 @@ fi
|
|||
%{_mandir}/man1/qemu-img.1*
|
||||
|
||||
%changelog
|
||||
* Tue May 12 2009 Mark McLoughlin <markmc@redhat.com> - 2:0.10.4-1
|
||||
- Update to 0.10.4
|
||||
- Fix yet more qcow2 corruption (#498405)
|
||||
- AIO cancellation fixes (#497170)
|
||||
- Fix VPC image size overflow (#491981)
|
||||
- Fix oops with 2.6.25 virtio guest (#470386)
|
||||
- Enable pulseaudio driver (#495964, #496627)
|
||||
- Fix cpuid initialization
|
||||
- Fix HPET emulation
|
||||
- Fix storage hotplug error handling
|
||||
- Migration fixes
|
||||
- Block range checking fixes
|
||||
- Make PCI config status register read-only
|
||||
- Handle newer Xorg keymap names
|
||||
- Don't leak memory on NIC hot-unplug
|
||||
- Hook up keypad keys for qemu console emulation
|
||||
- Correctly run on kernels lacking mmu notifiers
|
||||
- Support DDIM option ROMs
|
||||
- Fix PCI NIC error handling
|
||||
- Fix in-kernel LAPIC initialization
|
||||
- Fix broken e1000 PCI config space
|
||||
- Drop some patches which have been upstreamed
|
||||
- Drop the make-release script; we have an official tarball now
|
||||
|
||||
* Tue May 12 2009 Glauber Costa <glommer@redhat.com> - 2:0.10-18
|
||||
- move option rom setup function to the beginning of the file. This
|
||||
avoids static vs non-static issues, and is the way upstream does
|
||||
|
|
Loading…
Reference in New Issue