X-Git-Url: http://git.buserror.net/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=kernel%2Farch%2Fx64%2Fthread.cc;h=8fccb617817159bf9c09a45e1a8b57b9292cf654;hb=f40e08b2e9e6c351e13772c65932536e40013377;hp=f4c80b45975cb827847646a6786aa5d67f295fc7;hpb=77bf9a95a836b14a243953e1fbd28c7c1106c59a;p=polintos%2Fscott%2Fpriv.git diff --git a/kernel/arch/x64/thread.cc b/kernel/arch/x64/thread.cc index f4c80b4..8fccb61 100644 --- a/kernel/arch/x64/thread.cc +++ b/kernel/arch/x64/thread.cc @@ -21,16 +21,16 @@ namespace Arch { { u64 dummy1, dummy2; - if (dest->addr_space) { - assert(dest->addr_space == dest->active_addr_space); + if (dest->aspace) { + assert(dest->aspace == dest->active_aspace); - if (dest->addr_space != src->active_addr_space) { - u64 cr3 = Mem::kvirt_to_phys(dest->addr_space-> + if (dest->aspace != src->active_aspace) { + u64 cr3 = Mem::kvirt_to_phys(dest->aspace-> page_table->toplevel); asm volatile("movq %0, %%cr3" : : "r" (cr3) : "memory"); } } else { - dest->active_addr_space = src->active_addr_space; + dest->active_aspace = src->active_aspace; } Priv::tss.rsp[0] = reinterpret_cast(dest);