Lines Matching refs:task
1164 LoadTask* task, in load_library() argument
1169 off64_t file_offset = task->get_file_offset(); in load_library()
1170 const char* name = task->get_name(); in load_library()
1171 const android_dlextinfo* extinfo = task->get_extinfo(); in load_library()
1187 if (TEMP_FAILURE_RETRY(fstat(task->get_fd(), &file_stat)) != 0) { in load_library()
1206 task->set_soinfo(si); in load_library()
1217 if (TEMP_FAILURE_RETRY(fstatfs(task->get_fd(), &fs_stat)) != 0) { in load_library()
1227 const soinfo* needed_by = task->is_dt_needed() ? task->get_needed_by() : nullptr; in load_library()
1231 const soinfo* needed_or_dlopened_by = task->get_needed_by(); in load_library()
1243 const char* needed_or_dlopened_by = task->get_needed_by() == nullptr ? in load_library()
1245 task->get_needed_by()->get_realpath(); in load_library()
1268 task->set_soinfo(si); in load_library()
1271 if (!task->read(realpath.c_str(), file_stat.st_size)) { in load_library()
1272 task->remove_cached_elf_reader(); in load_library()
1273 task->set_soinfo(nullptr); in load_library()
1282 const ElfReader& elf_reader = task->get_elf_reader(); in load_library()
1305 for_each_dt_needed(task->get_elf_reader(), [&](const char* name) { in load_library()
1307 ns->get_name(), task->get_name(), name); in load_library()
1308 load_tasks->push_back(LoadTask::create(name, si, ns, task->get_readers_map())); in load_library()
1315 LoadTask* task, in load_library() argument
1320 const char* name = task->get_name(); in load_library()
1321 soinfo* needed_by = task->get_needed_by(); in load_library()
1322 const android_dlextinfo* extinfo = task->get_extinfo(); in load_library()
1341 task->set_fd(extinfo->library_fd, false); in load_library()
1342 task->set_file_offset(file_offset); in load_library()
1343 return load_library(ns, task, load_tasks, rtld_flags, realpath, search_linked_namespaces); in load_library()
1356 if (task->is_dt_needed()) { in load_library()
1361 needed_by->get_realpath(), task->get_start_from()->get_name()); in load_library()
1369 task->set_fd(fd, true); in load_library()
1370 task->set_file_offset(file_offset); in load_library()
1372 return load_library(ns, task, load_tasks, rtld_flags, realpath, search_linked_namespaces); in load_library()
1421 LoadTask* task) { in find_library_in_linked_namespace() argument
1428 if (find_loaded_library_by_soname(ns, task->get_name(), false, &candidate)) { in find_library_in_linked_namespace()
1432 soname = resolve_soname(task->get_name()); in find_library_in_linked_namespace()
1439 ns->get_name(), task->get_name(), soname.c_str()); in find_library_in_linked_namespace()
1446 ns->get_name(), task->get_name()); in find_library_in_linked_namespace()
1447 task->set_soinfo(candidate); in find_library_in_linked_namespace()
1454 task->get_name()); in find_library_in_linked_namespace()
1455 task->set_soinfo(nullptr); in find_library_in_linked_namespace()
1460 LoadTask* task, in find_library_internal() argument
1466 if (find_loaded_library_by_soname(ns, task->get_name(), true /* search_linked_namespaces */, in find_library_internal()
1470 ns->get_name(), task->get_name(), candidate->get_realpath()); in find_library_internal()
1471 task->set_soinfo(candidate); in find_library_internal()
1478 task->get_name(), candidate == nullptr ? "n/a" : candidate->get_realpath(), candidate); in find_library_internal()
1480 if (load_library(ns, task, zip_archive_cache, load_tasks, rtld_flags, in find_library_internal()
1486 if (ns->is_exempt_list_enabled() && is_exempt_lib(ns, task->get_name(), task->get_needed_by())) { in find_library_internal()
1493 ns->get_name(), task->get_name(), g_default_namespace.get_name()); in find_library_internal()
1495 if (load_library(ns, task, zip_archive_cache, load_tasks, rtld_flags, in find_library_internal()
1506 ns->get_name(), task->get_name(), ns->linked_namespaces().size()); in find_library_internal()
1508 if (find_library_in_linked_namespace(linked_namespace, task)) { in find_library_internal()
1510 if (task->get_soinfo() != nullptr) { in find_library_internal()
1518 if (load_library(linked_namespace.linked_namespace(), task, zip_archive_cache, load_tasks, in find_library_internal()
1521 ns->get_name(), task->get_name(), linked_namespace.linked_namespace()->get_name()); in find_library_internal()
1597 LoadTask* task = load_tasks[i]; in find_libraries() local
1598 soinfo* needed_by = task->get_needed_by(); in find_libraries()
1601 task->set_extinfo(is_dt_needed ? nullptr : extinfo); in find_libraries()
1602 task->set_dt_needed(is_dt_needed); in find_libraries()
1608 android_namespace_t* start_ns = const_cast<android_namespace_t*>(task->get_start_from()); in find_libraries()
1611 start_ns->get_name(), start_ns, task->get_name(), is_dt_needed); in find_libraries()
1613 if (!find_library_internal(start_ns, task, &zip_archive_cache, &load_tasks, rtld_flags)) { in find_libraries()
1617 soinfo* si = task->get_soinfo(); in find_libraries()
1654 for (auto&& task : load_tasks) { in find_libraries()
1655 soinfo* si = task->get_soinfo(); in find_libraries()
1662 load_list.push_back(task); in find_libraries()
1689 for (auto&& task : load_list) { in find_libraries()
1691 (reserved_address_recursive || !task->is_dt_needed()) ? &extinfo_params : &default_params; in find_libraries()
1692 if (!task->load(address_space)) { in find_libraries()
1699 for (auto&& task : load_tasks) { in find_libraries()
1700 soinfo* si = task->get_soinfo(); in find_libraries()
1746 for (auto&& task : load_tasks) { in find_libraries()
1747 soinfo* si = task->get_soinfo(); in find_libraries()
1748 soinfo* needed_by = task->get_needed_by(); in find_libraries()
1831 for (auto&& task : load_tasks) { in find_libraries()
1832 soinfo* si = task->get_soinfo(); in find_libraries()
1836 for (auto&& task : load_tasks) { in find_libraries()
1837 soinfo* si = task->get_soinfo(); in find_libraries()
1838 soinfo* needed_by = task->get_needed_by(); in find_libraries()