Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/devman/devman.c

    r554debd r463e734  
    678678}
    679679
     680static FIBRIL_MUTEX_INITIALIZE(add_device_guard);
     681
    680682/** Pass a device to running driver.
    681683 *
     
    685687void add_device(int phone, driver_t *drv, node_t *node, dev_tree_t *tree)
    686688{
     689        fibril_mutex_lock(&add_device_guard);
     690
    687691        /*
    688692         * We do not expect to have driver's mutex locked as we do not
     
    715719        /* Wait for answer from the driver. */
    716720        async_wait_for(req, &rc);
     721
     722        fibril_mutex_unlock(&add_device_guard);
    717723
    718724        switch(rc) {
     
    760766                start_driver(drv);
    761767        }
     768        fibril_mutex_unlock(&drv->driver_mutex);
     769       
     770        fibril_mutex_lock(&drv->driver_mutex);
    762771        bool is_running = drv->state == DRIVER_RUNNING;
    763772        fibril_mutex_unlock(&drv->driver_mutex);
Note: See TracChangeset for help on using the changeset viewer.