Re: [pps_ktimer_event] WARNING: CPU: 0 PID: 1 at lib/list_debug.c:33 __list_add()

Russell King - ARM Linux
2013-09-17T14:07:34Z

On Tue, Sep 17, 2013 at 09:51:22PM +0800, Fengguang Wu wrote:
> Greetings,
>
> I got the below dmesg and the first bad commit is

I'm afraid this report is virtually useless in terms of debugging what's
going on, because the timer list has been corrupted by some bad driver
kfree()'ing memory associated with a kobject before its release function
has been called.

This contains no hint as to whom is responsible for that.

I've tried to improve the debugging by decoupling the delayed work queue
from its associated kobject, but that has proven to be a fruitless task
due to the antics that x86 gets up to in its early initialisation.

I'm stumped with this; I can't see how we can get sane debugging out of
the kernel.

What we should have done is have explicitly delayed kobject releasing
from the very outset of sysfs to prevent this kind of madness from day
one - but we didn't and now we have something of a nasty headache with
it.