Re: [PATCH 04/15] task_diag: add a new interface to get information about tasks (v4)

From: Cyrill Gorcunov
Date: Tue Apr 12 2016 - 03:09:13 EST


On Mon, Apr 11, 2016 at 04:35:44PM -0700, Andrey Vagin wrote:
...
> +static int __taskdiag_dumpit(struct task_iter *iter,
> + struct task_diag_cb *cb, struct task_struct **start)
> +{
> + struct user_namespace *userns = current_user_ns();
> + struct task_struct *task = *start;
> + int rc;
> +
> + for (; task; task = iter_next(iter)) {
> + if (!ptrace_may_access(task, PTRACE_MODE_READ_FSCREDS))
> + continue;
> +
> + rc = task_diag_fill(task, cb->resp, &iter->req,
> + cb, iter->ns, userns);
> + if (rc < 0) {
> + if (rc != -EMSGSIZE)
> + return rc;
> + break;
> + }
> + }
> + *start = task;

task = NULL always here?

> +
> + return 0;
> +}

Cyrill