mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-23 11:18:54 +00:00
Prevent BSS from being cleared twice on BookE
Summary: First time BSS is cleared in booke_init(), Second time it's cleared in powerpc_init(). Any variable initialized between two those guys gets wiped out what is wrong. In particular it wipes tlb1_entries initialized by tlb1_init(), which was fine when tlb1_init() was called a second time, but this was removed in r304656. Submitted by: Ivan Krivonos <int0dster_gmail.com> Differential Revision: https://reviews.freebsd.org/D7638
This commit is contained in:
parent
7e89a3221f
commit
22983a8768
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=304829
@ -284,8 +284,14 @@ powerpc_init(vm_offset_t fdt, vm_offset_t toc, vm_offset_t ofentry, void *mdp)
|
||||
#endif
|
||||
}
|
||||
} else {
|
||||
#if !defined(BOOKE)
|
||||
/*
|
||||
* On BOOKE the BSS is already cleared and some variables
|
||||
* initialized. Do not wipe them out.
|
||||
*/
|
||||
bzero(__sbss_start, __sbss_end - __sbss_start);
|
||||
bzero(__bss_start, _end - __bss_start);
|
||||
#endif
|
||||
init_static_kenv(NULL, 0);
|
||||
}
|
||||
/* Store boot environment state */
|
||||
|
Loading…
Reference in New Issue
Block a user