diff options
Diffstat (limited to 'sys/boot/pc98/loader/main.c')
-rw-r--r-- | sys/boot/pc98/loader/main.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/boot/pc98/loader/main.c b/sys/boot/pc98/loader/main.c index eee4638..83e9bdf 100644 --- a/sys/boot/pc98/loader/main.c +++ b/sys/boot/pc98/loader/main.c @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include <stand.h> #include <string.h> #include <machine/bootinfo.h> +#include <machine/psl.h> #include <sys/reboot.h> #include "bootstrap.h" @@ -86,6 +87,10 @@ main(void) initial_bootdev = kargs->bootdev; initial_bootinfo = kargs->bootinfo ? (struct bootinfo *)PTOV(kargs->bootinfo) : NULL; + /* Initialize the v86 register set to a known-good state. */ + bzero(&v86, sizeof(v86)); + v86.efl = PSL_RESERVED_DEFAULT | PSL_I; + /* * Initialise the heap as early as possible. Once this is done, malloc() is usable. */ |