Messages in this thread | | | Date | Thu, 16 Feb 2006 10:20:56 +0000 | From | Russell King <> | Subject | Re: SMP BUG |
| |
On Wed, Feb 15, 2006 at 03:23:02PM -0800, Linus Torvalds wrote: > Does this fix the ARM oops?
It fixes that exact oops but only by preventing us getting that far due to another oops.
We call cpu_up, which sends a CPU_UP_PREPARE event. This causes the migration thread to be spawned, and rq->migration_thread to be set.
Eventually, we call the architecture __cpu_up(), which ends up calling init_idle(). Due to this patch, init_idle() then NULLs out rq->migration_thread.
Later, we send a CPU_ONLINE event, which then tries to do wake_up_process(rq->migration_thread) - resulting in a NULL pointer deref in try_to_wake_up().
Hence, with this patch, it looks like rq will be used prior to initialisation. I could try commenting out the migration_thread initialisation to NULL, but I suspect that there may be other problems associated with this patch (eg, rq->migration_queue).
-- Russell King Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/ maintainer of: 2.6 Serial core - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |