summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/vm/as.h
diff options
context:
space:
mode:
authorSudheer A <Sudheer.Abdul-Salam@Sun.COM>2009-07-23 15:32:40 -0700
committerSudheer A <Sudheer.Abdul-Salam@Sun.COM>2009-07-23 15:32:40 -0700
commit406882169e00272f14067d948324d690893e6fe3 (patch)
tree7a615b20e4fef0add627c91dad1fd40518d507aa /usr/src/uts/common/vm/as.h
parent3ed623140e27064f81020d9d47f9fb17489d1190 (diff)
downloadillumos-joyent-406882169e00272f14067d948324d690893e6fe3.tar.gz
6801244 ps takes too long when many AS segments because of rm_assize
Contributed by Chad Mynhier <cmynhier@forsythe.com>
Diffstat (limited to 'usr/src/uts/common/vm/as.h')
-rw-r--r--usr/src/uts/common/vm/as.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/usr/src/uts/common/vm/as.h b/usr/src/uts/common/vm/as.h
index 8ee8cb5276..98e496ef36 100644
--- a/usr/src/uts/common/vm/as.h
+++ b/usr/src/uts/common/vm/as.h
@@ -110,7 +110,7 @@ struct as {
caddr_t a_userlimit; /* highest allowable address in this as */
struct seg *a_seglast; /* last segment hit on the addr space */
krwlock_t a_lock; /* protects segment related fields */
- size_t a_size; /* size of address space */
+ size_t a_size; /* total size of address space */
struct seg *a_lastgap; /* last seg found by as_gap() w/ AS_HI (mmap) */
struct seg *a_lastgaphl; /* last seg saved in as_gap() either for */
/* AS_HI or AS_LO used in as_addseg() */
@@ -123,6 +123,7 @@ struct as {
struct as_callback *a_callbacks; /* callback list */
void *a_xhat; /* list of xhat providers */
proc_t *a_proc; /* back pointer to proc */
+ size_t a_resvsize; /* size of reserved part of address space */
};
#define AS_PAGLCK 0x80
@@ -276,8 +277,6 @@ int as_incore(struct as *as, caddr_t addr, size_t size, char *vec,
size_t *sizep);
int as_ctl(struct as *as, caddr_t addr, size_t size, int func, int attr,
uintptr_t arg, ulong_t *lock_map, size_t pos);
-int as_exec(struct as *oas, caddr_t ostka, size_t stksz,
- struct as *nas, caddr_t nstka, uint_t hatflag);
int as_pagelock(struct as *as, struct page ***ppp, caddr_t addr,
size_t size, enum seg_rw rw);
void as_pageunlock(struct as *as, struct page **pp, caddr_t addr,