diff options
author | Michael Shalayeff <mickey@cvs.openbsd.org> | 2003-05-02 21:07:51 +0000 |
---|---|---|
committer | Michael Shalayeff <mickey@cvs.openbsd.org> | 2003-05-02 21:07:51 +0000 |
commit | 9ac64af7926d77ca1bc84977a4249c91059065ca (patch) | |
tree | 0a9d578f0b0bf1bbfe67673feacc082c00dbc24c /sys/arch/i386/include/tss.h | |
parent | a308b37fbda7c0e311d0dde3871c5bd212495871 (diff) |
when flipping the code descriptors also update cs in the
tss and not only in the frame since we might be returning that way too.
add a heuristic for detecting an exec protection fault:
iff we get a read protection fault (which we normally never
get due to our segments being always readable) we assume that
it was an exec protection indeed and go to page fault
routine which will decide the rest for us (including sending
a signal should that be needed).
problem found by drahn@ and testing by many ppl.
Diffstat (limited to 'sys/arch/i386/include/tss.h')
-rw-r--r-- | sys/arch/i386/include/tss.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/i386/include/tss.h b/sys/arch/i386/include/tss.h index 2ca42328a0d..5d47b1160f7 100644 --- a/sys/arch/i386/include/tss.h +++ b/sys/arch/i386/include/tss.h @@ -1,4 +1,4 @@ -/* $OpenBSD: tss.h,v 1.4 2000/08/05 22:07:33 niklas Exp $ */ +/* $OpenBSD: tss.h,v 1.5 2003/05/02 21:07:50 mickey Exp $ */ /* $NetBSD: tss.h,v 1.6 1995/10/11 04:20:28 mycroft Exp $ */ /*- @@ -66,7 +66,7 @@ struct i386tss { int __tss_esi; int __tss_edi; int __tss_es; - int __tss_cs; + int tss_cs; int __tss_ss; int __tss_ds; int tss_fs; /* saved segment register */ |