lkml.org 
[lkml]   [2004]   [Nov]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] uml: fail xterm_open when we have no $DISPLAY
If UML wants to open an xterm channel and the xterm does not run
properly (eg. terminates soon after starting) we will get a hang.
This avoids the most common cause for this and adds a comment (which
long term will go away with a rewrite of that code I guess?)

Signed-off-by: Chris Wedgwood <cw@f00f.org>
---

arch/um/drivers/xterm.c | 7 +++++++
arch/um/drivers/xterm_kern.c | 3 +++
2 files changed, 10 insertions(+)

Index: cw-current/arch/um/drivers/xterm.c
===================================================================
--- cw-current.orig/arch/um/drivers/xterm.c 2004-11-14 17:52:05.955194653 -0800
+++ cw-current/arch/um/drivers/xterm.c 2004-11-14 17:52:23.048945524 -0800
@@ -94,6 +94,13 @@
"/usr/lib/uml/port-helper", "-uml-socket",
file, NULL };

+ /* Check that DISPLAY is set, this doesn't guarantee the xterm
+ * will work but w/o it we can be pretty sure it won't. */
+ if (!getenv("DISPLAY")) {
+ printk("xterm_open: $DISPLAY not set.\n");
+ return -ENODEV;
+ }
+
if(os_access(argv[4], OS_ACC_X_OK) < 0)
argv[4] = "port-helper";

Index: cw-current/arch/um/drivers/xterm_kern.c
===================================================================
--- cw-current.orig/arch/um/drivers/xterm_kern.c 2004-11-14 17:52:51.484194558 -0800
+++ cw-current/arch/um/drivers/xterm_kern.c 2004-11-14 17:53:09.197972625 -0800
@@ -61,6 +61,9 @@
ret = err;
goto out;
}
+
+ /* XXX Note, if the xterm doesn't work for some reason
+ * (eg. DISPLAY isn't set this will hang... */
down(&data->sem);

free_irq_by_irq_and_dev(XTERM_IRQ, data);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 14:08    [W:0.033 / U:1.336 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site