Re: [PATCH 1/5] Split wait_noreap_copyout()

Vitaly Mayatskikh
2009-05-11T12:18:39Z

At Mon, 11 May 2009 08:04:18 -0400, Christoph Hellwig wrote:

> wouldn't this better be written as:
>
> static int wait_copyout(struct wait_opts *wo, struct task_struct *p,
> pid_t pid, uid_t uid, int why, int status, int signal)
> {
> struct siginfo __user *infop = wo->wo_info;
>
> if (wo->wo_rusage) {
> int retval = getrusage(p, RUSAGE_BOTH, wo->wo_rusage);
> if (retval)
> return retval;
> }
>
> if (!infop)
> return 0;
>
> if (put_user(signal, &infop->si_signo) ||
> put_user(0, &infop->si_errno) ||
> put_user((short)why, &infop->si_code) ||
> put_user(pid, &infop->si_pid) ||
> put_user(uid, &infop->si_uid) ||
> put_user(status, &infop->si_status))
> return -EFAULT;
> return 0;
> }

Yes. But I'm planning to get rid of put_user() in next patches.

--
wbr, Vitaly