rpms/xen/devel xen-3.2.0-qemu-evtchn-fd.patch, NONE, 1.1 xen-qemu-logfile.patch, NONE, 1.1 xen.spec, 1.211, 1.212 xen-disable-latex-docs.patch, 1.1, NONE

Daniel P. Berrange (berrange) fedora-extras-commits at redhat.com
Wed Feb 27 20:33:54 UTC 2008


Author: berrange

Update of /cvs/pkgs/rpms/xen/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv30168

Modified Files:
	xen.spec 
Added Files:
	xen-3.2.0-qemu-evtchn-fd.patch xen-qemu-logfile.patch 
Removed Files:
	xen-disable-latex-docs.patch 
Log Message:
Let XenD setup QEMU logfile (rhbz #435164)

xen-3.2.0-qemu-evtchn-fd.patch:

--- NEW FILE xen-3.2.0-qemu-evtchn-fd.patch ---
changeset:   17121:ca2cf5c1adcc
user:        Keir Fraser <keir.fraser at citrix.com>
date:        Tue Feb 26 14:46:57 2008 +0000
summary:     ioemu: Do not sue xce_handle directly as a file descriptor.

diff -r 76479f25cdac -r ca2cf5c1adcc tools/ioemu/hw/xen_console.c
--- a/tools/ioemu/hw/xen_console.c	Tue Feb 26 14:46:07 2008 +0000
+++ b/tools/ioemu/hw/xen_console.c	Tue Feb 26 14:46:57 2008 +0000
@@ -381,7 +381,7 @@ static void xencons_startup(void *opaque
 	qemu_set_fd_handler2(xs_fileno(dom->xsh), NULL, NULL, NULL, NULL);
 
 	fprintf(stderr, "Console: connected to guest frontend\n");
-	if (qemu_set_fd_handler2(dom->xce_handle, NULL, xencons_ring_read, NULL, dom) < 0)
+	if (qemu_set_fd_handler2(xc_evtchn_fd(dom->xce_handle), NULL, xencons_ring_read, NULL, dom) < 0)
 		return;
 
 	qemu_chr_add_handlers(dom->chr, xencons_can_receive, xencons_receive,
diff -r 76479f25cdac -r ca2cf5c1adcc tools/ioemu/hw/xenfb.c
--- a/tools/ioemu/hw/xenfb.c	Tue Feb 26 14:46:07 2008 +0000
+++ b/tools/ioemu/hw/xenfb.c	Tue Feb 26 14:46:57 2008 +0000
@@ -1160,7 +1160,7 @@ static int xenfb_register_console(struct
 			     xenfb);
 	dpy_resize(xenfb->ds, xenfb->width, xenfb->height);
 
-	if (qemu_set_fd_handler2(xenfb->evt_xch, NULL, xenfb_dispatch_channel, NULL, xenfb) < 0)
+	if (qemu_set_fd_handler2(xc_evtchn_fd(xenfb->evt_xch), NULL, xenfb_dispatch_channel, NULL, xenfb) < 0)
 	        return -1;
 	if (qemu_set_fd_handler2(xs_fileno(xenfb->xsh), NULL, xenfb_dispatch_store, NULL, xenfb) < 0)
 		return -1;


xen-qemu-logfile.patch:

--- NEW FILE xen-qemu-logfile.patch ---
diff -r 2a8eaba24bf0 tools/ioemu/keymaps.c
--- a/tools/ioemu/keymaps.c	Tue Feb 26 15:11:51 2008 +0000
+++ b/tools/ioemu/keymaps.c	Wed Feb 27 15:26:53 2008 -0500
@@ -126,11 +126,11 @@ static kbd_layout_t *parse_keyboard_layo
 		    if (rest && strstr(rest, "numlock")) {
 			add_to_key_range(&k->keypad_range, keycode);
 			add_to_key_range(&k->numlock_range, keysym);
-			fprintf(stderr, "keypad keysym %04x keycode %d\n", keysym, keycode);
+			//fprintf(stderr, "keypad keysym %04x keycode %d\n", keysym, keycode);
 		    }
 		    if (rest && strstr(rest, "shift")) {
 			add_to_key_range(&k->shift_range, keysym);
-			fprintf(stderr, "shift keysym %04x keycode %d\n", keysym, keycode);
+			//fprintf(stderr, "shift keysym %04x keycode %d\n", keysym, keycode);
 		    }
 
 		    /* if(keycode&0x80)
diff -r 2a8eaba24bf0 tools/ioemu/monitor.c
--- a/tools/ioemu/monitor.c	Tue Feb 26 15:11:51 2008 +0000
+++ b/tools/ioemu/monitor.c	Wed Feb 27 15:26:53 2008 -0500
@@ -2520,7 +2520,7 @@ static void monitor_handle_command1(void
 
 static void monitor_start_input(void)
 {
-    readline_start("(HVMXen) ", 0, monitor_handle_command1, NULL);
+    readline_start("(qemu) ", 0, monitor_handle_command1, NULL);
 }
 
 static void term_event(void *opaque, int event)
diff -r 2a8eaba24bf0 tools/ioemu/vl.c
--- a/tools/ioemu/vl.c	Tue Feb 26 15:11:51 2008 +0000
+++ b/tools/ioemu/vl.c	Wed Feb 27 15:26:53 2008 -0500
@@ -7611,9 +7611,7 @@ int main(int argc, char **argv)
         }
     }
 
-    /* Now send logs to our named config */
-    sprintf(qemu_dm_logfilename, "/var/log/xen/qemu-dm-%d.log", domid);
-    cpu_set_log_filename(qemu_dm_logfilename);
+    cpu_set_log(0);
 
 #ifndef NO_DAEMONIZE
     if (daemonize && !nographic && vnc_display == NULL && vncunused == 0) {
diff -r 2a8eaba24bf0 tools/python/xen/xend/image.py
--- a/tools/python/xen/xend/image.py	Tue Feb 26 15:11:51 2008 +0000
+++ b/tools/python/xen/xend/image.py	Wed Feb 27 15:26:53 2008 -0500
@@ -296,7 +296,34 @@ class ImageHandler:
                         { 'dom': self.vm.getDomid(), 'read': True, 'write': True })
         log.info("spawning device models: %s %s", self.device_model, args)
         # keep track of pid and spawned options to kill it later
-        self.pid = os.spawnve(os.P_NOWAIT, self.device_model, args, env)
+
+        logfile = "/var/log/xen/qemu-dm-%s.log" %  str(self.vm.info['name_label'])
+        if os.path.exists(logfile):
+            if os.path.exists(logfile + ".1"):
+                os.unlink(logfile + ".1")
+            os.rename(logfile, logfile + ".1")
+
+        null = os.open("/dev/null", os.O_RDONLY)
+        logfd = os.open(logfile, os.O_WRONLY|os.O_CREAT|os.O_TRUNC)
+        
+        pid = os.fork()
+        if pid == 0: #child
+            try:
+                os.dup2(null, 0)
+                os.dup2(logfd, 1)
+                os.dup2(logfd, 2)
+                os.close(null)
+                os.close(logfd)
+                try:
+                    os.execve(self.device_model, args, env)
+                except:
+                    os._exit(127)
+            except:
+                os._exit(127)
+        else:
+            self.pid = pid
+            os.close(null)
+            os.close(logfd)
         self.vm.storeDom("image/device-model-pid", self.pid)
         log.info("device model pid: %d", self.pid)
 


Index: xen.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xen/devel/xen.spec,v
retrieving revision 1.211
retrieving revision 1.212
diff -u -r1.211 -r1.212
--- xen.spec	23 Feb 2008 16:14:07 -0000	1.211
+++ xen.spec	27 Feb 2008 20:33:17 -0000	1.212
@@ -2,7 +2,7 @@
 
 # Always set these 3 tags
 %define base_version 3.2.0
-%define base_release 8
+%define base_release 9
 
 # Hypervisor ABI
 %define hv_abi  3.2
@@ -68,12 +68,12 @@
 Patch8: xen-xenstore-cli.patch
 Patch9: xen-timer-mode.patch
 
-# Temporary hack see rhbz #431327
-Patch10: xen-disable-latex-docs.patch
 Patch13: xen-dumpdir.patch
 Patch14: xen-net-disable-bridge-by-default.patch
 Patch15: xen-net-disable-iptables-on-bridge.patch
 Patch16: xen-3.2.0-block-rw-range-check.patch
+Patch17: xen-3.2.0-qemu-evtchn-fd.patch
+Patch18: xen-qemu-logfile.patch
 
 Patch36: xen-qemu-bootmenu.patch
 
@@ -169,11 +169,12 @@
 %patch8 -p1
 %patch9 -p1
 
-%patch10 -p1
 %patch13 -p1
 %patch14 -p1
 %patch15 -p1
 %patch16 -p1
+%patch17 -p1
+%patch18 -p1
 
 %patch36 -p1
 
@@ -456,6 +457,10 @@
 %{_libdir}/*.a
 
 %changelog
+* Wed Feb 27 2008 Daniel P. Berrange <berrange at redhat.com> - 3.2.0-9.fc9
+- Let XenD setup QEMU logfile (rhbz #435164)
+- Fix PVFB use of event channel filehandle
+
 * Sat Feb 23 2008 Daniel P. Berrange <berrange at redhat.com> - 3.2.0-8.fc9
 - Fix block device extents check (rhbz #433560)
 


--- xen-disable-latex-docs.patch DELETED ---




More information about the fedora-extras-commits mailing list