Re: 2.6.22.6 + oprofile oops

From: Sami Farin
Date: Thu Oct 11 2007 - 15:18:55 EST


On Thu, Oct 11, 2007 at 16:36:10 +0200, Philippe Elie wrote:
> On Sat, 29 Sep 2007 at 20:05 +0000, Sami Farin wrote:
>
> > > x86_64 SMP kernel v2.6.22.6 (not using callgraph).
> > > sometimes oprofile works for a longer time... but not this time.
> > >
> > > 2007-09-22 13:53:32.527237777 <1>[ 3372.390188] Unable to handle kernel NULL pointer dereference at 0000000000000650 RIP:
> > > 2007-09-22 13:53:32.527245948 <1>[ 3372.390195] [<ffffffff80652f44>] _spin_lock+0x4/0x20
> ...
> > 2007-09-22 13:53:32.527390314 <4>[ 3372.390457] [<ffffffff80232b88>] get_task_mm+0x18/0x60
>
> On the per cpu buffer writer side oprofile_add_sample() use profile_pc()
> to get the eip, profile_pc() can return ~0lu, but an eip == ~0lu is a
> magic value = ESCAPE_CODE. The per cpu reader side in buffer_sync.c use
> this value to know that the associated data is a task pointer but here
> the associated data is a counter number.

I applied this patch and I'm not able to reproduce Oops anymore
with 2.6.22.10 or 2.6.23.
Haven't gotten "oprofile: Invalid event", either.

Thanks a bunch!

--
Do what you love because life is too short for anything else.

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