Re: [perf] more perf_fuzzer memory corruption

From: Thomas Gleixner
Date: Thu May 01 2014 - 09:29:20 EST


On Thu, 1 May 2014, Thomas Gleixner wrote:

> On Thu, 1 May 2014, Peter Zijlstra wrote:
> > On Thu, May 01, 2014 at 12:26:02PM +0200, Peter Zijlstra wrote:
> > > On Thu, May 01, 2014 at 12:51:33AM +0200, Thomas Gleixner wrote:
> > > > And that's the issue which puzzles us. Let's look at what we expect:
> > > >
> > > > Now the trace shows a different story:
> > > >
> > > > perf_fuzzer-4387 [001] 1802.628659: sys_enter: NR 298 (69bb58, 0, ffffffff, 12, 0, 0)
> > >
> > > That's a per-cpu event (.pid = -1, .cpu = 12), they don't get inherited,
> > > so the only thing keeping it alive is the fd the child got. So
> > > exit_files() killing this thing makes perfect sense.
>
> Duh, right. Should have noticed :(

And having a second look:

SYSCALL_DEFINE5(perf_event_open,
struct perf_event_attr __user *, attr_uptr,
pid_t, pid, int, cpu, int, group_fd, unsigned long, flags)

sys_enter: NR 298 (69bb58, 0, ffffffff, 12, 0, 0)

attr_uptr = 0x69bb58
pid = 0
cpu = -1
group_fd = 12
flags = 0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/