summaryrefslogtreecommitdiffstats
path: root/sys/fs
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1999-12-11 10:21:34 +0000
committerpeter <peter@FreeBSD.org>1999-12-11 10:21:34 +0000
commita9e62f9902f21861f553647dab07e745ca6e2b41 (patch)
treeaeec71b40afcc75f02496a5be5ff112c48096838 /sys/fs
parent2f2990e953cdb9c6adc40039edc1ba06d8fa7188 (diff)
downloadFreeBSD-src-a9e62f9902f21861f553647dab07e745ca6e2b41.zip
FreeBSD-src-a9e62f9902f21861f553647dab07e745ca6e2b41.tar.gz
Don't simulate a pseudo address-space beyond VM_MAXUSER_ADDRESS that
maps onto the upages. We used to use this extensively, particularly for ps and gdb. Both of these have been "fixed". ps gets the p_stats via eproc along with all the other stats, and gdb uses the regs, fpregs etc files. Once apon a time the UPAGES were mapped here, but that changed back in January '96. This essentially kills my revisions 1.16 and 1.17. The 2-page "hole" above the stack can be reclaimed now.
Diffstat (limited to 'sys/fs')
-rw-r--r--sys/fs/procfs/procfs_mem.c40
1 files changed, 0 insertions, 40 deletions
diff --git a/sys/fs/procfs/procfs_mem.c b/sys/fs/procfs/procfs_mem.c
index 8b785bf..ebfe53b 100644
--- a/sys/fs/procfs/procfs_mem.c
+++ b/sys/fs/procfs/procfs_mem.c
@@ -128,46 +128,6 @@ procfs_rwmem(curp, p, uio)
*/
len = min(PAGE_SIZE - page_offset, uio->uio_resid);
- if (uva >= VM_MAXUSER_ADDRESS) {
- vm_offset_t tkva;
-
- if (writing ||
- uva >= VM_MAXUSER_ADDRESS + UPAGES * PAGE_SIZE ||
- (ptrace_read_u_check(p,
- uva - (vm_offset_t) VM_MAXUSER_ADDRESS,
- (size_t) len) &&
- !procfs_kmemaccess(curp))) {
- error = 0;
- break;
- }
-
- /* we are reading the "U area", force it into core */
- PHOLD(p);
-
- /* sanity check */
- if (!(p->p_flag & P_INMEM)) {
- /* aiee! */
- PRELE(p);
- error = EFAULT;
- break;
- }
-
- /* populate the ptrace/procfs area */
- p->p_addr->u_kproc.kp_proc = *p;
- fill_eproc (p, &p->p_addr->u_kproc.kp_eproc);
-
- /* locate the in-core address */
- tkva = (uintptr_t)p->p_addr + uva - VM_MAXUSER_ADDRESS;
-
- /* transfer it */
- error = uiomove((caddr_t)tkva, len, uio);
-
- /* let the pages go */
- PRELE(p);
-
- continue;
- }
-
/*
* Fault the page on behalf of the process
*/
OpenPOWER on IntegriCloud