Index: uspace/srv/devman/devman.c
===================================================================
--- uspace/srv/devman/devman.c	(revision 398c4d7d49f35ea8c23f7957b353aad549ad55a9)
+++ uspace/srv/devman/devman.c	(revision 463e73487913f21bac827e1a143dfeb4e9d442ae)
@@ -678,4 +678,5 @@
 }
 
+static FIBRIL_MUTEX_INITIALIZE(add_device_guard);
 
 /** Pass a device to running driver.
@@ -686,4 +687,6 @@
 void add_device(int phone, driver_t *drv, node_t *node, dev_tree_t *tree)
 {
+	fibril_mutex_lock(&add_device_guard);
+
 	/*
 	 * We do not expect to have driver's mutex locked as we do not
@@ -716,4 +719,6 @@
 	/* Wait for answer from the driver. */
 	async_wait_for(req, &rc);
+
+	fibril_mutex_unlock(&add_device_guard);
 
 	switch(rc) {
