aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>2001-08-23 01:47:26 +0000
committerPeter Wemm <peter@FreeBSD.org>2001-08-23 01:47:26 +0000
commit520f648f423d420d2e9d9850efa4177bbfb030a0 (patch)
treea9ec95e3548dc38ca50dadb5c5ef1b2f21eedb30 /sys
parent2ddb1aff195a5217089e42994b509ea386548ab7 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/pc98/i386/machdep.c18
-rw-r--r--sys/pc98/pc98/machdep.c18
2 files changed, 4 insertions, 32 deletions
diff --git a/sys/pc98/i386/machdep.c b/sys/pc98/i386/machdep.c
index ae40b8a7a10a0..940e034e91414 100644
--- a/sys/pc98/i386/machdep.c
+++ b/sys/pc98/i386/machdep.c
@@ -1939,25 +1939,11 @@ init386(first)
/* make ldt memory segments */
/*
- * The data segment limit must not cover the user area because we
- * don't want the user area to be writable in copyout() etc. (page
- * level protection is lost in kernel mode on 386's). Also, we
- * don't want the user area to be writable directly (page level
- * protection of the user area is not available on 486's with
- * CR0_WP set, because there is no user-read/kernel-write mode).
- *
* XXX - VM_MAXUSER_ADDRESS is an end address, not a max. And it
* should be spelled ...MAX_USER...
*/
-#define VM_END_USER_RW_ADDRESS VM_MAXUSER_ADDRESS
- /*
- * The code segment limit has to cover the user area until we move
- * the signal trampoline out of the user area. This is safe because
- * the code segment cannot be written to directly.
- */
-#define VM_END_USER_R_ADDRESS (VM_END_USER_RW_ADDRESS + UPAGES * PAGE_SIZE)
- ldt_segs[LUCODE_SEL].ssd_limit = atop(VM_END_USER_R_ADDRESS - 1);
- ldt_segs[LUDATA_SEL].ssd_limit = atop(VM_END_USER_RW_ADDRESS - 1);
+ ldt_segs[LUCODE_SEL].ssd_limit = atop(VM_MAXUSER_ADDRESS - 1);
+ ldt_segs[LUDATA_SEL].ssd_limit = atop(VM_MAXUSER_ADDRESS - 1);
for (x = 0; x < sizeof ldt_segs / sizeof ldt_segs[0]; x++)
ssdtosd(&ldt_segs[x], &ldt[x].sd);
diff --git a/sys/pc98/pc98/machdep.c b/sys/pc98/pc98/machdep.c
index ae40b8a7a10a0..940e034e91414 100644
--- a/sys/pc98/pc98/machdep.c
+++ b/sys/pc98/pc98/machdep.c
@@ -1939,25 +1939,11 @@ init386(first)
/* make ldt memory segments */
/*
- * The data segment limit must not cover the user area because we
- * don't want the user area to be writable in copyout() etc. (page
- * level protection is lost in kernel mode on 386's). Also, we
- * don't want the user area to be writable directly (page level
- * protection of the user area is not available on 486's with
- * CR0_WP set, because there is no user-read/kernel-write mode).
- *
* XXX - VM_MAXUSER_ADDRESS is an end address, not a max. And it
* should be spelled ...MAX_USER...
*/
-#define VM_END_USER_RW_ADDRESS VM_MAXUSER_ADDRESS
- /*
- * The code segment limit has to cover the user area until we move
- * the signal trampoline out of the user area. This is safe because
- * the code segment cannot be written to directly.
- */
-#define VM_END_USER_R_ADDRESS (VM_END_USER_RW_ADDRESS + UPAGES * PAGE_SIZE)
- ldt_segs[LUCODE_SEL].ssd_limit = atop(VM_END_USER_R_ADDRESS - 1);
- ldt_segs[LUDATA_SEL].ssd_limit = atop(VM_END_USER_RW_ADDRESS - 1);
+ ldt_segs[LUCODE_SEL].ssd_limit = atop(VM_MAXUSER_ADDRESS - 1);
+ ldt_segs[LUDATA_SEL].ssd_limit = atop(VM_MAXUSER_ADDRESS - 1);
for (x = 0; x < sizeof ldt_segs / sizeof ldt_segs[0]; x++)
ssdtosd(&ldt_segs[x], &ldt[x].sd);