minios: Fix bug in xenbus implementation.
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Fri, 2 Feb 2007 15:55:56 +0000 (15:55 +0000)
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Fri, 2 Feb 2007 15:55:56 +0000 (15:55 +0000)
Signed-off-by: Keir Fraser <keir@xensource.com>
extras/mini-os/xenbus/xenbus.c

index 1a0f0e048f7c7aa62df3a25263ec9ece5d7f4601..f2428c12fa38ccd6ad06cefef183d823f5ac04d3 100644 (file)
@@ -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;
 }