aboutsummaryrefslogtreecommitdiff
path: root/linux/src
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2020-03-29 17:13:12 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2020-03-29 17:13:12 +0200
commit4d79b40a53d855c41137fa44bcafa62f5ae9f55d (patch)
tree71abc7f8dca9b62de1459925132d6679f13bce2a /linux/src
parent7d26734f9144243f1fa5a0dfbc57a21be4a59472 (diff)
downloadgnumach-4d79b40a53d855c41137fa44bcafa62f5ae9f55d.tar.gz
gnumach-4d79b40a53d855c41137fa44bcafa62f5ae9f55d.tar.bz2
gnumach-4d79b40a53d855c41137fa44bcafa62f5ae9f55d.zip
Fix 64bit TSS/LDT system descriptors
* i386/i386/seg.h (real_descriptor64): New structure. (fill_descriptor64): New function. * i386/i386/gdt.h [__x86_64__] (KERNEL_TSS): Set to 0x40 instead of 0x20. [__x86_64__] (USER_TSS): Set to 0x58 instead of 0x30. [__x86_64__] (GDTSZ): Set to 12 instead of 11. (_fill_gdt_descriptor): New macro. (_fill_gdt_descriptor64, fill_gdt_descriptor64): New macros. (_fill_gdt_sys_descriptor, fill_gdt_sys_descriptor): New macros. * i386/i386/ktss.c (ktss_init): Use fill_gdt_sys_descriptor instead of fill_gdt_descriptor to set KERNEL_TSS GDT entry. * i386/i386/ldt.c (ldt_init): Likewise for KERNEL_LDT GDT entry. * i386/i386/ldt.h (fill_ldt_descriptor, fill_ldt_gate): Use sel_idx instead of reimplementing it. * i386/i386/mp_desc.c (mp_desc_init): Use _fill_gdt_sys_descriptor instead of reimplementing it.
Diffstat (limited to 'linux/src')
0 files changed, 0 insertions, 0 deletions