Re: Random scheduler/unaligned accesses crashes with perf lockevents on sparc 64

From: Frederic Weisbecker
Date: Mon Apr 05 2010 - 15:41:19 EST


On Mon, Apr 05, 2010 at 12:22:33PM -0700, David Miller wrote:
> From: Frederic Weisbecker <fweisbec@xxxxxxxxx>
> Date: Mon, 5 Apr 2010 08:57:04 +0200
>
> > It seems to happen after an unaligned access fixup.
>
> You shouldn't be getting the unaligned fixup in the first place,
> especially in the locations where you see them. I suspect that
> once you see first fixup, all of the registers in the cpu have
> been corrupted in one way or another.
>
> I suspect something fundamental gets corrupted, for example the
> current register window (%cwp) is corrupted and that screws up all of
> the registers so every single function starts accessing garbage.
>
> My suspicions lie in three places, the ftrace mcount()
> stubs, stack_trace_flush(), or the new perf_arch_save_caller_regs()
> since those are the three places offhand that could make
> us potentially make us return to function in the wrong
> register window.


It happens without CONFIG_FUNCTION_TRACER as well (but it happens
when the function tracer runs). And I hadn't your perf_arch_save_caller_regs()
when I triggered this.

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