[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <19f34abd0807130455w516d73cfi80161c345564464@mail.gmail.com>
Date: Sun, 13 Jul 2008 13:55:22 +0200
From: "Vegard Nossum" <vegard.nossum@...il.com>
To: "Yinghai Lu" <yhlu.kernel@...il.com>
Cc: "Ingo Molnar" <mingo@...e.hu>, LKML <linux-kernel@...r.kernel.org>,
"Mike Travis" <travis@....com>,
"Thomas Gleixner" <tglx@...utronix.de>,
"Steven Rostedt" <rostedt@...dmis.org>
Subject: Re: per-cpu related?
Hi,
On Sun, Jul 13, 2008 at 10:16 AM, Yinghai Lu <yhlu.kernel@...il.com> wrote:
> calling pcie_portdrv_init+0x0/0x77
> BUG: unable to handle kernel NULL pointer dereference at 0000000000000000
> IP: [<ffffffff802557de>] hrtick_start_fair+0x8e/0x178
> PGD 0
> Oops: 0000 [1] SMP
> CPU 4
> Modules linked in:
> Pid: 103, comm: events/4 Not tainted 2.6.26-rc9-tip-01834-g99e624f-dirty #354
> RIP: 0010:[<ffffffff802557de>] [<ffffffff802557de>]
> hrtick_start_fair+0x8e/0x178
I find that this corresponds to timer->base being NULL:
static inline int hrtimer_is_hres_active(struct hrtimer *timer)
{
return timer->base->cpu_base->hres_active;
}
Apparently timer->base can legitimately be NULL in some cases:
/*
* [...]
* When the timer's base is locked, and the timer removed from list, it is
* possible to set timer->base = NULL and drop the lock: the timer remains
* locked.
*/
I don't know any more than this yet, I hope I didn't waste your time.
Vegard
--
"The animistic metaphor of the bug that maliciously sneaked in while
the programmer was not looking is intellectually dishonest as it
disguises that the error is the programmer's own creation."
-- E. W. Dijkstra, EWD1036
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists