Re: [PATCH 1/3] perf: Return proper values for user stack errors

From: Arnaldo Carvalho de Melo
Date: Mon Apr 16 2018 - 12:55:17 EST


Em Mon, Apr 16, 2018 at 01:54:30PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Sun, Apr 15, 2018 at 11:23:50AM +0200, Jiri Olsa escreveu:
> > Return immediately when we find issue in the user
> > stack checks. The error value could get overwritten
> > by following check for PERF_SAMPLE_REGS_INTR.
> >
> > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
>
> Also, since you're sending this to syskaller-bugs, was this something
> reported by that tool? If so I think we should communicate with him,
> like described in its docs, no? /me goes to find the doc snippet...

Ok, you did it in 2/3, nevermind then :-)

- Arnaldo
>
>
> > kernel/events/core.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/kernel/events/core.c b/kernel/events/core.c
> > index fc1c330c6bd6..4d997bc064d2 100644
> > --- a/kernel/events/core.c
> > +++ b/kernel/events/core.c
> > @@ -10191,9 +10191,9 @@ static int perf_copy_attr(struct perf_event_attr __user *uattr,
> > * __u16 sample size limit.
> > */
> > if (attr->sample_stack_user >= USHRT_MAX)
> > - ret = -EINVAL;
> > + return -EINVAL;
> > else if (!IS_ALIGNED(attr->sample_stack_user, sizeof(u64)))
> > - ret = -EINVAL;
> > + return -EINVAL;
> > }
> >
> > if (!attr->sample_max_stack)
> > --
> > 2.13.6