Lines Matching refs:task
154 void free_task(struct loadtask *task)
156 if (task == NULL) {
159 if (task->name) {
160 __libc_free(task->name);
161 task->name = NULL;
163 if (task->allocated_buf) {
164 __libc_free(task->allocated_buf);
165 task->allocated_buf = NULL;
167 if (task->shdr_allocated_buf != MAP_FAILED) {
168 munmap(task->shdr_allocated_buf, task->shsize);
169 task->shdr_allocated_buf = MAP_FAILED;
171 if (task->dyn_map_len) {
172 munmap(task->dyn_map, task->dyn_map_len);
173 task->dyn_map = NULL;
174 task->dyn_map_len = 0;
176 if (task->str_map_len) {
177 munmap(task->str_map, task->str_map_len);
178 task->str_map = NULL;
179 task->str_map_len = 0;
181 if (task->fd != -1 && task->fd) {
182 close(task->fd);
183 task->fd = -1;
185 __libc_free(task);
218 struct loadtask *task = NULL;
225 task = tasks->array[i];
227 tasks->array[index] = task;
239 struct loadtask *task = __libc_calloc(1, sizeof(struct loadtask));
240 if (!task) {
244 task->name = name_buf;
245 task->needed_by = needed_by;
246 task->namespace = ns;
247 task->check_inherited = check_inherited;
248 task->shdr_allocated_buf = MAP_FAILED;
249 return task;