aboutsummaryrefslogtreecommitdiffstats
path: root/extras
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-04-06 07:12:39 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-04-06 07:12:39 +0100
commitd98d3c520857f706fb83cdb9d398b7b8b1733141 (patch)
tree8bc5ef285d9ed461bfc63018575bbb8ffc89af9b /extras
parent38c433d0c711406778aba1ae183a195da98656f0 (diff)
downloadxen-d98d3c520857f706fb83cdb9d398b7b8b1733141.tar.gz
xen-d98d3c520857f706fb83cdb9d398b7b8b1733141.tar.bz2
xen-d98d3c520857f706fb83cdb9d398b7b8b1733141.zip
mini-os: Do not use the same wait element twice
To enqueue the kbdfront thread on two separate wait queues, we need two different wait elements. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Diffstat (limited to 'extras')
-rw-r--r--extras/mini-os/kernel.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/extras/mini-os/kernel.c b/extras/mini-os/kernel.c
index 19e4400be4..99af70aa1d 100644
--- a/extras/mini-os/kernel.c
+++ b/extras/mini-os/kernel.c
@@ -353,6 +353,7 @@ static struct kbdfront_dev *kbd_dev;
static void kbdfront_thread(void *p)
{
DEFINE_WAIT(w);
+ DEFINE_WAIT(w2);
int x = WIDTH / 2, y = HEIGHT / 2, z = 0;
kbd_dev = init_kbdfront(NULL, 1);
@@ -367,7 +368,7 @@ static void kbdfront_thread(void *p)
int sleep = 1;
add_waiter(w, kbdfront_queue);
- add_waiter(w, fbfront_queue);
+ add_waiter(w2, fbfront_queue);
while (kbdfront_receive(kbd_dev, &kbdevent, 1) != 0) {
sleep = 0;