mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
x86 hvm: During task switch, LDT must be loaded before all other
segments, as some may be loaded from the LDT. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
This commit is contained in:
1 parent
5dd00021b3
commit
1908c5cf43
1 file changed
+3
-3
@@ -1440,13 +1440,13 @@ void hvm_task_switch(
|
||||
}
|
||||
|
||||
exn_raised = 0;
|
||||
if ( hvm_load_segment_selector(v, x86_seg_es, tss.es) ||
|
||||
if ( hvm_load_segment_selector(v, x86_seg_ldtr, tss.ldt) ||
|
||||
hvm_load_segment_selector(v, x86_seg_es, tss.es) ||
|
||||
hvm_load_segment_selector(v, x86_seg_cs, tss.cs) ||
|
||||
hvm_load_segment_selector(v, x86_seg_ss, tss.ss) ||
|
||||
hvm_load_segment_selector(v, x86_seg_ds, tss.ds) ||
|
||||
hvm_load_segment_selector(v, x86_seg_fs, tss.fs) ||
|
||||
hvm_load_segment_selector(v, x86_seg_gs, tss.gs) ||
|
||||
hvm_load_segment_selector(v, x86_seg_ldtr, tss.ldt) )
|
||||
hvm_load_segment_selector(v, x86_seg_gs, tss.gs) )
|
||||
exn_raised = 1;
|
||||
|
||||
rc = hvm_copy_to_guest_virt(
|
||||
|
||||