Rev 3892 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3892 | Rev 4125 | ||
|---|---|---|---|
| Line 63... | Line 63... | ||
| 63 | /* Set kernel stack for CP3 -> CPL0 switch via SYSENTER */ |
63 | /* Set kernel stack for CP3 -> CPL0 switch via SYSENTER */ |
| 64 | write_msr(IA32_MSR_SYSENTER_ESP, kstk); |
64 | write_msr(IA32_MSR_SYSENTER_ESP, kstk); |
| 65 | 65 | ||
| 66 | /* Set kernel stack for CPL3 -> CPL0 switch via interrupt */ |
66 | /* Set kernel stack for CPL3 -> CPL0 switch via interrupt */ |
| 67 | CPU->arch.tss->esp0 = kstk; |
67 | CPU->arch.tss->esp0 = kstk; |
| 68 | CPU->arch.tss->ss0 = selector(KDATA_DES); |
68 | CPU->arch.tss->ss0 = gdtselector(KDATA_DES); |
| 69 | 69 | ||
| 70 | /* Set up TLS in GS register */ |
70 | /* Set up TLS in GS register */ |
| 71 | set_tls_desc(THREAD->arch.tls); |
71 | set_tls_desc(THREAD->arch.tls); |
| 72 | } |
72 | } |
| 73 | 73 | ||