diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2007-08-07 13:07:25 +0000 |
---|---|---|
committer | Thomas Schwinge <tschwinge@gnu.org> | 2009-06-18 00:27:12 +0200 |
commit | e44a3dddf93d9ac15eea6bd323a2308b0ea6d493 (patch) | |
tree | b4bb152d34e2a410f55cd1e3aafdd7f6b8c891cf /linux/src/include/asm-i386 | |
parent | baf29c7a7fe74d8ca799c869440f7b7cd5a33b8a (diff) |
2007-07-09 Samuel Thibault <samuel.thibault@ens-lyon.org>
* i386/i386/db_interface.c (int_regs): Drop gs and fs fields.
(kdb_kentry): Get fs and gs from struct i386_interrupt_state instead of
struct int_regs.
* i386/i386/kttd_interface.c (int_regs, kttd_netentry): Likewise.
* i386/i386/locore.S (all_intrs): Save fs and gs and set them to kernel
segment too.
(return_to_iret): Restore fs and gs too.
(return_to_iret_i): Likewise.
(ast_from_interrupt): Set fs and gs to kernel segment too.
(kdb_from_iret): Don't save/restore fs and gs either.
(ttd_from_iret): Likewise.
* i386/i386/thread.h (i386_interrupt_state): Add gs and fs fields.
* linux/src/include/asm-i386/irq.h (SAVE_ALL): Set gs to kernel
segment too.
Diffstat (limited to 'linux/src/include/asm-i386')
-rw-r--r-- | linux/src/include/asm-i386/irq.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/linux/src/include/asm-i386/irq.h b/linux/src/include/asm-i386/irq.h index feb504a..c75744a 100644 --- a/linux/src/include/asm-i386/irq.h +++ b/linux/src/include/asm-i386/irq.h @@ -38,6 +38,7 @@ extern void enable_irq(unsigned int); "movl $" STR(KERNEL_DS) ",%edx\n\t" \ "mov %dx,%ds\n\t" \ "mov %dx,%es\n\t" \ + "mov %dx,%gs\n\t" \ "movl $" STR(USER_DS) ",%edx\n\t" \ "mov %dx,%fs\n\t" \ "movl $0,%edx\n\t" \ |