Lines Matching refs:iter
3280 static struct tgid_iter next_tgid(struct pid_namespace *ns, struct tgid_iter iter) in next_tgid() argument
3284 if (iter.task) in next_tgid()
3285 put_task_struct(iter.task); in next_tgid()
3288 iter.task = NULL; in next_tgid()
3289 pid = find_ge_pid(iter.tgid, ns); in next_tgid()
3291 iter.tgid = pid_nr_ns(pid, ns); in next_tgid()
3292 iter.task = pid_task(pid, PIDTYPE_PID); in next_tgid()
3305 if (!iter.task || !has_group_leader_pid(iter.task)) { in next_tgid()
3306 iter.tgid += 1; in next_tgid()
3309 get_task_struct(iter.task); in next_tgid()
3312 return iter; in next_tgid()
3320 struct tgid_iter iter; in proc_pid_readdir() local
3339 iter.tgid = pos - TGID_OFFSET; in proc_pid_readdir()
3340 iter.task = NULL; in proc_pid_readdir()
3341 for (iter = next_tgid(ns, iter); in proc_pid_readdir()
3342 iter.task; in proc_pid_readdir()
3343 iter.tgid += 1, iter = next_tgid(ns, iter)) { in proc_pid_readdir()
3348 if (!has_pid_permissions(ns, iter.task, HIDEPID_INVISIBLE)) in proc_pid_readdir()
3351 len = snprintf(name, sizeof(name), "%u", iter.tgid); in proc_pid_readdir()
3352 ctx->pos = iter.tgid + TGID_OFFSET; in proc_pid_readdir()
3354 proc_pid_instantiate, iter.task, NULL)) { in proc_pid_readdir()
3355 put_task_struct(iter.task); in proc_pid_readdir()