Move EFER initialization to initialize_cpu()
This commit is contained in:
parent
d357aada75
commit
b3fb599b25
@ -35,13 +35,17 @@ private __gshared HulkHeader hulk_header = {
|
||||
|
||||
private void initialize_cpu()
|
||||
{
|
||||
/* 1. Enable SSE. */
|
||||
/* 1.a. Turn off CR0.EM and turn on CR0.MP. */
|
||||
/* Enable SSE. */
|
||||
/* Turn off CR0.EM and turn on CR0.MP. */
|
||||
write_cr0((read_cr0() & ~CR0_EM) | CR0_MP);
|
||||
/* 1.b. Set CR4.OSFXSR and CR4.OSXMMEXCPT. */
|
||||
/* Set CR4.OSFXSR and CR4.OSXMMEXCPT. */
|
||||
write_cr4(read_cr4() | CR4_OSFXSR | CR4_OSXMMEXCPT);
|
||||
/* 2. Enable OSXSAVE. */
|
||||
|
||||
/* Enable OSXSAVE. */
|
||||
write_cr4(read_cr4() | CR4_OSXSAVE);
|
||||
|
||||
/* Turn on NXE (no execute enable) flag in the EFER MSR. */
|
||||
wrmsr(MSR_EFER, rdmsr(MSR_EFER) | EFER_NXE);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -33,8 +33,6 @@ struct hurl
|
||||
*/
|
||||
public static void initialize(HulkHeader * header)
|
||||
{
|
||||
/* Turn on NXE (no execute enable) flag in the EFER MSR. */
|
||||
wrmsr(MSR_EFER, rdmsr(MSR_EFER) | EFER_NXE);
|
||||
m_pt_base = allocate_pt();
|
||||
/* Identity map all physical RAM. */
|
||||
map_range(0u,
|
||||
|
Loading…
x
Reference in New Issue
Block a user