Ignore:
File:
1 edited

Legend:

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

    r50ad3f3 r9d58539  
    245245       
    246246        fibril_rwlock_write_lock(&device_tree.rwlock);
    247        
     247
    248248        if (fun->state == FUN_ON_LINE) {
    249249                fibril_rwlock_write_unlock(&device_tree.rwlock);
     
    259259                        return ENOMEM;
    260260                }
    261                
     261
    262262                insert_dev_node(&device_tree, dev, fun);
    263263                dev_add_ref(dev);
     
    272272                /* Give one reference over to assign_driver_fibril(). */
    273273                dev_add_ref(dev);
    274                
    275274                /*
    276275                 * Try to find a suitable driver and assign it to the device.  We do
     
    289288                }
    290289                fibril_add_ready(assign_fibril);
    291         } else
     290        } else {
    292291                loc_register_tree_function(fun, &device_tree);
     292        }
    293293       
    294294        fibril_rwlock_write_unlock(&device_tree.rwlock);
     
    11491149                if (dev->pfun->dev != NULL)
    11501150                        driver = dev->pfun->dev->drv;
    1151                
    11521151                fwd_h = dev->pfun->handle;
    11531152        } else if (dev->state == DEVICE_USABLE) {
     
    11551154                driver = dev->drv;
    11561155                assert(driver != NULL);
    1157                
     1156
    11581157                fwd_h = handle;
    11591158        }
     
    11821181
    11831182        if (fun != NULL) {
    1184                 log_msg(LVL_DEBUG,
     1183                log_msg(LVL_DEBUG, 
    11851184                    "Forwarding request for `%s' function to driver `%s'.",
    11861185                    fun->pathname, driver->name);
    11871186        } else {
    1188                 log_msg(LVL_DEBUG,
     1187                log_msg(LVL_DEBUG, 
    11891188                    "Forwarding request for `%s' device to driver `%s'.",
    11901189                    dev->pfun->pathname, driver->name);
     
    11941193        async_forward_fast(iid, exch, method, fwd_h, 0, IPC_FF_NONE);
    11951194        async_exchange_end(exch);
    1196        
     1195
    11971196cleanup:
    11981197        if (dev != NULL)
    11991198                dev_del_ref(dev);
    1200        
    12011199        if (fun != NULL)
    12021200                fun_del_ref(fun);
     
    13011299                return false;
    13021300        }
    1303        
     1301
    13041302        log_msg(LVL_DEBUG, "devman_init - list of drivers has been initialized.");
    1305        
     1303
    13061304        /* Create root device node. */
    13071305        if (!init_device_tree(&device_tree, &drivers_list)) {
     
    13091307                return false;
    13101308        }
    1311        
     1309
    13121310        /*
    13131311         * Caution: As the device manager is not a real loc
     
    13241322int main(int argc, char *argv[])
    13251323{
    1326         printf("%s: HelenOS Device Manager\n", NAME);
    1327        
    1328         int rc = log_init(NAME, LVL_WARN);
    1329         if (rc != EOK) {
    1330                 printf("%s: Error initializing logging subsystem.\n", NAME);
    1331                 return rc;
     1324        printf(NAME ": HelenOS Device Manager\n");
     1325
     1326        if (log_init(NAME, LVL_WARN) != EOK) {
     1327                printf(NAME ": Error initializing logging subsystem.\n");
     1328                return -1;
    13321329        }
    13331330       
     
    13361333        async_set_client_data_destructor(devman_client_data_destroy);
    13371334        async_set_client_connection(devman_connection);
    1338        
     1335
    13391336        if (!devman_init()) {
    13401337                log_msg(LVL_ERROR, "Error while initializing service.");
    13411338                return -1;
    13421339        }
    1343        
     1340
    13441341        /* Register device manager at naming service. */
    1345         rc = service_register(SERVICE_DEVMAN);
    1346         if (rc != EOK) {
     1342        if (service_register(SERVICE_DEVMAN) != EOK) {
    13471343                log_msg(LVL_ERROR, "Failed registering as a service.");
    1348                 return rc;
    1349         }
    1350        
    1351         printf("%s: Accepting connections.\n", NAME);
     1344                return -1;
     1345        }
     1346
     1347        printf(NAME ": Accepting connections.\n");
    13521348        task_retval(0);
    13531349        async_manager();
    1354        
     1350
    13551351        /* Never reached. */
    13561352        return 0;
Note: See TracChangeset for help on using the changeset viewer.