Re: perf_fuzzer compiled for x32 causes reboot

From: Vince Weaver
Date: Sun Feb 23 2014 - 00:16:58 EST


On Fri, 21 Feb 2014, H. Peter Anvin wrote:

> Error 6 reflects a write in userspace to a not-present page.
>
> Since your previous trace indicates that the value of the register in question
> is a different one, I'm guessing that what we have here is PEBS getting
> activated. 0x120 is 2*0x90, and 0x90 is the size of a 64-bit PEBS record.

I'm having problems generating a replayable syscall trace that exhibits
the problem.

It turns out that the segfault address listed (the multiple of 0x120)
happens to be the value in the RBP register at the time of the segfault.

That's odd, as the instruction is
movdqa %xmm0,(%rdi)
and rdi is the valid mmap address of the perf ring buffer
rdi 0xf7768000 4151738368

so I'm not sure why RBP is involved at all.

In all of the cases I've investigated the precise_ip value has been set
for the problem event... but none of the events have been hardware events
(software and breakpoint so far). So probably not PEBS related?

Vince

--
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/