lib/thread,arch/x86: Move thread stacks into C bss
There is no reason this needs to be done in asm. It also allows different stages to use threads. If threads are no used in a specific stage, the compiler will garbage collect the space. BUG=b:179699789 TEST=Boot guybrush to the OS Suggested-by: Julius Werner <jwerner@chromium.org> Signed-off-by: Raul E Rangel <rrangel@chromium.org> Change-Id: Ib5a84a62fdc75db8ef0358ae16ff69c20cbafd5f Reviewed-on: https://review.coreboot.org/c/coreboot/+/56531 Reviewed-by: Furquan Shaikh <furquan@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
committed by
Patrick Georgi
parent
b9d94ecd78
commit
7db7ee984c
@@ -17,11 +17,6 @@ _stack:
|
||||
.space (CONFIG_MAX_CPUS+1)*CONFIG_STACK_SIZE
|
||||
_estack:
|
||||
.set _stack_size, _estack - _stack
|
||||
#if CONFIG(COOP_MULTITASKING)
|
||||
.global thread_stacks
|
||||
thread_stacks:
|
||||
.space CONFIG_STACK_SIZE*CONFIG_NUM_THREADS
|
||||
#endif
|
||||
|
||||
.section ".text._start", "ax", @progbits
|
||||
#if ENV_X86_64
|
||||
|
@@ -39,10 +39,3 @@ void arch_prepare_thread(struct thread *t,
|
||||
|
||||
t->stack_current = stack;
|
||||
}
|
||||
|
||||
void *arch_get_thread_stackbase(void)
|
||||
{
|
||||
/* defined in c_start.S */
|
||||
extern u8 thread_stacks[];
|
||||
return &thread_stacks[0];
|
||||
}
|
||||
|
Reference in New Issue
Block a user