[PATCH] fix strange stack calculation for secondary cpus

Dave Hansen (haveblue@us.ibm.com)
Tue, 10 Dec 2002 13:00:15 -0800


This is a multi-part message in MIME format.
--------------020902030102020404000403
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

in arch/i386/kernel/smpboot.c:
stack_start.esp = (void *) (1024 + PAGE_SIZE + (char *)idle);

This causes problems when I switch to 4k stacks? What is supposed to
be going on here? Why point esp into the middle of the stack? If you
wanted to do that, why not just use PAGE_SIZE>>2?

In any case, I think THREAD_SIZE needs to be here instead of PAGE_SIZE.

-- 
Dave Hansen
haveblue@us.ibm.com

--------------020902030102020404000403 Content-Type: text/plain; name="fix-esp-2.5.51.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="fix-esp-2.5.51.patch"

--- linux-2.5.50/arch/i386/kernel/smpboot.c.bad Tue Dec 10 12:56:10 2002 +++ linux-2.5.50/arch/i386/kernel/smpboot.c Tue Dec 10 12:56:55 2002 @@ -806,7 +806,7 @@ /* So we see what's up */ printk("Booting processor %d/%d eip %lx\n", cpu, apicid, start_eip); - stack_start.esp = (void *) (1024 + PAGE_SIZE + (char *)idle->thread_info); + stack_start.esp = (void *) (THREAD_SIZE + (char *)idle->thread_info); /* * This grunge runs the startup process for

--------------020902030102020404000403--

- 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/