x86: Clear irqstack thread_info
Mathias Merz reported that v2.6.37 failed to boot on his system. Make sure that the thread_info part of the irqstack is initialized to zeroes. Reported-and-Tested-by: Matthias Merz <linux@merz-ka.de> Signed-off-by: Brian Gerst <brgerst@gmail.com> Acked-by: Pekka Enberg <penberg@kernel.org> Cc: Arjan van de Ven <arjan@linux.intel.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> LKML-Reference: <AANLkTimyKXfJ1x8tgwrr1hYnNLrPfgE1NTe4z7L6tUDm@mail.gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
86b1e8dd83
commit
7b698ea377
1 changed files with 2 additions and 5 deletions
|
@ -129,8 +129,7 @@ void __cpuinit irq_ctx_init(int cpu)
|
|||
irqctx = page_address(alloc_pages_node(cpu_to_node(cpu),
|
||||
THREAD_FLAGS,
|
||||
THREAD_ORDER));
|
||||
irqctx->tinfo.task = NULL;
|
||||
irqctx->tinfo.exec_domain = NULL;
|
||||
memset(&irqctx->tinfo, 0, sizeof(struct thread_info));
|
||||
irqctx->tinfo.cpu = cpu;
|
||||
irqctx->tinfo.preempt_count = HARDIRQ_OFFSET;
|
||||
irqctx->tinfo.addr_limit = MAKE_MM_SEG(0);
|
||||
|
@ -140,10 +139,8 @@ void __cpuinit irq_ctx_init(int cpu)
|
|||
irqctx = page_address(alloc_pages_node(cpu_to_node(cpu),
|
||||
THREAD_FLAGS,
|
||||
THREAD_ORDER));
|
||||
irqctx->tinfo.task = NULL;
|
||||
irqctx->tinfo.exec_domain = NULL;
|
||||
memset(&irqctx->tinfo, 0, sizeof(struct thread_info));
|
||||
irqctx->tinfo.cpu = cpu;
|
||||
irqctx->tinfo.preempt_count = 0;
|
||||
irqctx->tinfo.addr_limit = MAKE_MM_SEG(0);
|
||||
|
||||
per_cpu(softirq_ctx, cpu) = irqctx;
|
||||
|
|
Loading…
Reference in a new issue