On Thu, Feb 19, 2015 at 08:29:51PM +0100, Rabin Vincent wrote: > INIT_THREAD enables interrupts in the thread_struct's saved flags. This > means that interrupts get enabled in the middle of context_switch() > while switching to new tasks that get forked off the init task during > boot. Don't do this. > > Fixes the following splat on boot with spinlock debugging on: > > BUG: spinlock cpu recursion on CPU#0, swapper/2 > lock: runqueues+0x0/0x47c, .magic: dead4ead, .owner: swapper/0, > .owner_cpu: 0 > CPU: 0 PID: 2 Comm: swapper Not tainted 3.19.0-08796-ga747b55 #285 > > Call Trace: > [<c0032b80>] spin_bug+0x2a/0x36 > [<c0032c98>] do_raw_spin_lock+0xa2/0x126 > [<c01964b0>] _raw_spin_lock+0x20/0x2a > [<c00286c8>] scheduler_tick+0x22/0x76 > [<c003db2c>] update_process_times+0x5e/0x72 > [<c0007a94>] timer_interrupt+0x4e/0x6a > [<c00378d6>] handle_irq_event_percpu+0x54/0xf2 > [<c00379c4>] handle_irq_event+0x50/0x74 > [<c003988e>] handle_simple_irq+0x6c/0xbe > [<c0037270>] generic_handle_irq+0x2a/0x36 > [<c0004c40>] do_IRQ+0x38/0x84 > [<c000662e>] crisv32_do_IRQ+0x54/0x60 > [<c0006204>] IRQ0x4b_interrupt+0x34/0x3c > [<c0192baa>] __schedule+0x24a/0x532 > [<c00056b4>] ret_from_kernel_thread+0x0/0x14 > > Signed-off-by: Rabin Vincent <ra...@rab.in>
Looks good, adding to the CRIS-tree. /^JN - Jesper Nilsson -- Jesper Nilsson -- jesper.nils...@axis.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/