[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] xen/riscv: initialize .bss section
commit cfa0409f7cbb674c160b92335e9345e7e051dc1e Author: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx> AuthorDate: Mon Mar 20 17:12:04 2023 +0100 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Mon Mar 20 17:12:04 2023 +0100 xen/riscv: initialize .bss section Signed-off-by: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx> Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Reviewed-by: Bobby Eshleman <bobbyeshleman@xxxxxxxxx> --- xen/arch/riscv/riscv64/head.S | 9 +++++++++ xen/arch/riscv/setup.c | 8 ++++++++ 2 files changed, 17 insertions(+) diff --git a/xen/arch/riscv/riscv64/head.S b/xen/arch/riscv/riscv64/head.S index adf5d6c74a..8887f0cbd4 100644 --- a/xen/arch/riscv/riscv64/head.S +++ b/xen/arch/riscv/riscv64/head.S @@ -1,3 +1,4 @@ +#include <asm/asm.h> #include <asm/riscv_encoding.h> .section .text.header, "ax", %progbits @@ -18,6 +19,14 @@ ENTRY(start) li t0, SSTATUS_FS csrc CSR_SSTATUS, t0 + /* Clear the BSS */ + la t3, __bss_start + la t4, __bss_end +.L_clear_bss: + REG_S zero, (t3) + add t3, t3, __SIZEOF_POINTER__ + bltu t3, t4, .L_clear_bss + la sp, cpu0_boot_stack li t0, STACK_SIZE add sp, sp, t0 diff --git a/xen/arch/riscv/setup.c b/xen/arch/riscv/setup.c index 22ef2817ff..3786f337e0 100644 --- a/xen/arch/riscv/setup.c +++ b/xen/arch/riscv/setup.c @@ -7,6 +7,14 @@ unsigned char __initdata cpu0_boot_stack[STACK_SIZE] __aligned(STACK_SIZE); +/* + * To be sure that .bss isn't zero. It will simplify code of + * .bss initialization. + * TODO: + * To be deleted when the first real .bss user appears + */ +int dummy_bss __attribute__((unused)); + void __init noreturn start_xen(unsigned long bootcpu_id, paddr_t dtb_addr) { -- generated by git-patchbot for /home/xen/git/xen.git#master
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |