Changes in uspace/srv/devman/devman.c [ebcb05a:9b415c9] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/devman/devman.c
rebcb05a r9b415c9 148 148 149 149 log_msg(LVL_NOTE, "Driver `%s' was added to the list of available " 150 "drivers. ", drv->name);150 "drivers.\n", drv->name); 151 151 } 152 152 … … 238 238 bool read_match_ids(const char *conf_path, match_id_list_t *ids) 239 239 { 240 log_msg(LVL_DEBUG, "read_match_ids(conf_path=\"%s\") ", conf_path);240 log_msg(LVL_DEBUG, "read_match_ids(conf_path=\"%s\")\n", conf_path); 241 241 242 242 bool suc = false; … … 248 248 fd = open(conf_path, O_RDONLY); 249 249 if (fd < 0) { 250 log_msg(LVL_ERROR, "Unable to open `%s' for reading: %s. ",250 log_msg(LVL_ERROR, "Unable to open `%s' for reading: %s.\n", 251 251 conf_path, str_error(fd)); 252 252 goto cleanup; … … 257 257 lseek(fd, 0, SEEK_SET); 258 258 if (len == 0) { 259 log_msg(LVL_ERROR, "Configuration file '%s' is empty. ",259 log_msg(LVL_ERROR, "Configuration file '%s' is empty.\n", 260 260 conf_path); 261 261 goto cleanup; … … 265 265 if (buf == NULL) { 266 266 log_msg(LVL_ERROR, "Memory allocation failed when parsing file " 267 "'%s'. ", conf_path);267 "'%s'.\n", conf_path); 268 268 goto cleanup; 269 269 } … … 271 271 ssize_t read_bytes = safe_read(fd, buf, len); 272 272 if (read_bytes <= 0) { 273 log_msg(LVL_ERROR, "Unable to read file '%s'. ", conf_path);273 log_msg(LVL_ERROR, "Unable to read file '%s'.\n", conf_path); 274 274 goto cleanup; 275 275 } … … 309 309 bool get_driver_info(const char *base_path, const char *name, driver_t *drv) 310 310 { 311 log_msg(LVL_DEBUG, "get_driver_info(base_path=\"%s\", name=\"%s\") ",311 log_msg(LVL_DEBUG, "get_driver_info(base_path=\"%s\", name=\"%s\")\n", 312 312 base_path, name); 313 313 … … 369 369 int lookup_available_drivers(driver_list_t *drivers_list, const char *dir_path) 370 370 { 371 log_msg(LVL_DEBUG, "lookup_available_drivers(dir=\"%s\") ", dir_path);371 log_msg(LVL_DEBUG, "lookup_available_drivers(dir=\"%s\")\n", dir_path); 372 372 373 373 int drv_cnt = 0; … … 403 403 dev_node_t *dev; 404 404 405 log_msg(LVL_DEBUG, "create_root_nodes() ");405 log_msg(LVL_DEBUG, "create_root_nodes()\n"); 406 406 407 407 fibril_rwlock_write_lock(&tree->rwlock); … … 488 488 void attach_driver(dev_node_t *dev, driver_t *drv) 489 489 { 490 log_msg(LVL_DEBUG, "attach_driver(dev=\"%s\",drv=\"%s\") ",490 log_msg(LVL_DEBUG, "attach_driver(dev=\"%s\",drv=\"%s\")\n", 491 491 dev->pfun->pathname, drv->name); 492 492 … … 511 511 assert(fibril_mutex_is_locked(&drv->driver_mutex)); 512 512 513 log_msg(LVL_DEBUG, "start_driver(drv=\"%s\") ", drv->name);513 log_msg(LVL_DEBUG, "start_driver(drv=\"%s\")\n", drv->name); 514 514 515 515 rc = task_spawnl(NULL, drv->binary_path, drv->binary_path, NULL); 516 516 if (rc != EOK) { 517 log_msg(LVL_ERROR, "Spawning driver `%s' (%s) failed: %s. ",517 log_msg(LVL_ERROR, "Spawning driver `%s' (%s) failed: %s.\n", 518 518 drv->name, drv->binary_path, str_error(rc)); 519 519 return false; … … 578 578 int phone; 579 579 580 log_msg(LVL_DEBUG, "pass_devices_to_driver(driver=\"%s\") ",580 log_msg(LVL_DEBUG, "pass_devices_to_driver(driver=\"%s\")\n", 581 581 driver->name); 582 582 … … 646 646 * immediately and possibly started here as well. 647 647 */ 648 log_msg(LVL_DEBUG, "Driver `%s' enters running state. ", driver->name);648 log_msg(LVL_DEBUG, "Driver `%s' enters running state.\n", driver->name); 649 649 driver->state = DRIVER_RUNNING; 650 650 … … 663 663 void initialize_running_driver(driver_t *driver, dev_tree_t *tree) 664 664 { 665 log_msg(LVL_DEBUG, "initialize_running_driver(driver=\"%s\") ",665 log_msg(LVL_DEBUG, "initialize_running_driver(driver=\"%s\")\n", 666 666 driver->name); 667 667 … … 754 754 * access any structures that would affect driver_t. 755 755 */ 756 log_msg(LVL_DEBUG, "add_device(drv=\"%s\", dev=\"%s\") ",756 log_msg(LVL_DEBUG, "add_device(drv=\"%s\", dev=\"%s\")\n", 757 757 drv->name, dev->pfun->name); 758 758 … … 816 816 driver_t *drv = find_best_match_driver(drivers_list, dev); 817 817 if (drv == NULL) { 818 log_msg(LVL_ERROR, "No driver found for device `%s'. ",818 log_msg(LVL_ERROR, "No driver found for device `%s'.\n", 819 819 dev->pfun->pathname); 820 820 return false; … … 854 854 bool init_device_tree(dev_tree_t *tree, driver_list_t *drivers_list) 855 855 { 856 log_msg(LVL_DEBUG, "init_device_tree() ");856 log_msg(LVL_DEBUG, "init_device_tree()\n"); 857 857 858 858 tree->current_handle = 0; … … 1033 1033 fun->pathname = (char *) malloc(pathsize); 1034 1034 if (fun->pathname == NULL) { 1035 log_msg(LVL_ERROR, "Failed to allocate device path. ");1035 log_msg(LVL_ERROR, "Failed to allocate device path.\n"); 1036 1036 return false; 1037 1037 } … … 1064 1064 assert(fibril_rwlock_is_write_locked(&tree->rwlock)); 1065 1065 1066 log_msg(LVL_DEBUG, "insert_dev_node(dev=%p, pfun=%p [\"%s\"]) ",1066 log_msg(LVL_DEBUG, "insert_dev_node(dev=%p, pfun=%p [\"%s\"])\n", 1067 1067 dev, pfun, pfun->pathname); 1068 1068 … … 1173 1173 } 1174 1174 1175 /** Find function with a specified name belonging to given device.1176 *1177 * Device tree rwlock should be held at least for reading.1178 *1179 * @param dev Device the function belongs to.1180 * @param name Function name (not path).1181 * @return Function node.1182 * @retval NULL No function with given name.1183 */1184 fun_node_t *find_fun_node_in_device(dev_node_t *dev, const char *name)1185 {1186 assert(dev != NULL);1187 assert(name != NULL);1188 1189 fun_node_t *fun;1190 link_t *link;1191 1192 for (link = dev->functions.next;1193 link != &dev->functions;1194 link = link->next) {1195 fun = list_get_instance(link, fun_node_t, dev_functions);1196 1197 if (str_cmp(name, fun->name) == 0)1198 return fun;1199 }1200 1201 return NULL;1202 }1203 1204 /** Find function node by its class name and index. */1205 fun_node_t *find_fun_node_by_class(class_list_t *class_list,1206 const char *class_name, const char *dev_name)1207 {1208 assert(class_list != NULL);1209 assert(class_name != NULL);1210 assert(dev_name != NULL);1211 1212 fibril_rwlock_read_lock(&class_list->rwlock);1213 1214 dev_class_t *cl = find_dev_class_no_lock(class_list, class_name);1215 if (cl == NULL) {1216 fibril_rwlock_read_unlock(&class_list->rwlock);1217 return NULL;1218 }1219 1220 dev_class_info_t *dev = find_dev_in_class(cl, dev_name);1221 if (dev == NULL) {1222 fibril_rwlock_read_unlock(&class_list->rwlock);1223 return NULL;1224 }1225 1226 fun_node_t *fun = dev->fun;1227 1228 fibril_rwlock_read_unlock(&class_list->rwlock);1229 1230 return fun;1231 }1232 1233 1234 1175 /** Find child function node with a specified name. 1235 1176 * … … 1242 1183 fun_node_t *find_node_child(fun_node_t *pfun, const char *name) 1243 1184 { 1244 return find_fun_node_in_device(pfun->child, name); 1185 fun_node_t *fun; 1186 link_t *link; 1187 1188 link = pfun->child->functions.next; 1189 1190 while (link != &pfun->child->functions) { 1191 fun = list_get_instance(link, fun_node_t, dev_functions); 1192 1193 if (str_cmp(name, fun->name) == 0) 1194 return fun; 1195 1196 link = link->next; 1197 } 1198 1199 return NULL; 1245 1200 } 1246 1201 … … 1404 1359 } 1405 1360 1406 dev_class_info_t *find_dev_in_class(dev_class_t *dev_class, const char *dev_name)1407 {1408 assert(dev_class != NULL);1409 assert(dev_name != NULL);1410 1411 link_t *link;1412 for (link = dev_class->devices.next;1413 link != &dev_class->devices;1414 link = link->next) {1415 dev_class_info_t *dev = list_get_instance(link,1416 dev_class_info_t, link);1417 1418 if (str_cmp(dev->dev_name, dev_name) == 0) {1419 return dev;1420 }1421 }1422 1423 return NULL;1424 }1425 1426 1361 void init_class_list(class_list_t *class_list) 1427 1362 {
Note:
See TracChangeset
for help on using the changeset viewer.