The Xen console intercepts ^O and prevents it from propagating
through to the guest. However, ^O is a useful key in bash and in
Emacs. This patch changes the console to pass a single ^O
through to the guest when it is pressed twice.
Signed-off-by: Ben Pfaff <blp@cs.stanford.edu>
diff -r 6e03c621b579 -r b377228321f6
linux-2.6-xen-sparse/drivers/xen/console/console.c
--- a/linux-2.6-xen-sparse/drivers/xen/console/console.c Tue Mar 06 15:40:06
2007 -0800
+++ b/linux-2.6-xen-sparse/drivers/xen/console/console.c Thu Mar 08 14:26:26
2007 -0800
@@ -348,8 +348,11 @@ void xencons_rx(char *buf, unsigned len,
#ifdef CONFIG_MAGIC_SYSRQ
if (sysrq_enabled) {
if (buf[i] == ''\x0f'') { /* ^O */
- sysrq_requested = jiffies;
- continue; /* don''t print the sysrq key */
+ if (!sysrq_requested) {
+ sysrq_requested = jiffies;
+ continue; /* don''t print the sysrq key */
+ }
+ sysrq_requested = 0;
} else if (sysrq_requested) {
unsigned long sysrq_timeout sysrq_requested + HZ*2;
--
Ben Pfaff
blp@cs.stanford.edu
http://benpfaff.org
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel