aboutsummaryrefslogtreecommitdiffstats
path: root/extras/mini-os/xenbus
diff options
context:
space:
mode:
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>2007-02-02 15:55:56 +0000
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>2007-02-02 15:55:56 +0000
commite5a28da5dbbe1d54b3738e7979f1d0cf125f2595 (patch)
treed82a95c03ed84f2e2dd7e420218d7550c60462b6 /extras/mini-os/xenbus
parentb5c66d349302228614c1082d830c83e8aec7794f (diff)
downloadxen-e5a28da5dbbe1d54b3738e7979f1d0cf125f2595.tar.gz
xen-e5a28da5dbbe1d54b3738e7979f1d0cf125f2595.tar.bz2
xen-e5a28da5dbbe1d54b3738e7979f1d0cf125f2595.zip
minios: Fix bug in xenbus implementation.
Signed-off-by: Keir Fraser <keir@xensource.com>
Diffstat (limited to 'extras/mini-os/xenbus')
-rw-r--r--extras/mini-os/xenbus/xenbus.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/extras/mini-os/xenbus/xenbus.c b/extras/mini-os/xenbus/xenbus.c
index 1a0f0e048f..f2428c12fa 100644
--- a/extras/mini-os/xenbus/xenbus.c
+++ b/extras/mini-os/xenbus/xenbus.c
@@ -178,6 +178,7 @@ static void release_xenbus_id(int id)
BUG_ON(!req_info[id].in_use);
spin_lock(&req_lock);
nr_live_reqs--;
+ req_info[id].in_use = 0;
if (nr_live_reqs == NR_REQS - 1)
wake_up(&req_wq);
spin_unlock(&req_lock);
@@ -212,6 +213,7 @@ static int allocate_xenbus_id(void)
probe = o_probe + 1;
spin_unlock(&req_lock);
init_waitqueue_head(&req_info[o_probe].waitq);
+
return o_probe;
}