diff options
author | marcel <marcel@FreeBSD.org> | 2008-03-01 22:54:42 +0000 |
---|---|---|
committer | marcel <marcel@FreeBSD.org> | 2008-03-01 22:54:42 +0000 |
commit | 7834123faf84837f07b0d243ed77aae77b67d435 (patch) | |
tree | 2dab9aaf132c83b82a19dddc7bb7cbf0f5c143bf /sys/vm | |
parent | e9e93481a8e9f4c5bab2705e722f0fc56514bb21 (diff) | |
download | FreeBSD-src-7834123faf84837f07b0d243ed77aae77b67d435.zip FreeBSD-src-7834123faf84837f07b0d243ed77aae77b67d435.tar.gz |
Make the vm_pmap field of struct vmspace the last field in the
structure. This allows per-CPU variations of struct pmap on a
single architecture without affecting the machine-independent
fields. As such, the PMAP variations don't affect the ABI. They
become part of it.
Diffstat (limited to 'sys/vm')
-rw-r--r-- | sys/vm/vm_map.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/vm/vm_map.h b/sys/vm/vm_map.h index 1d3d90d..28479e3 100644 --- a/sys/vm/vm_map.h +++ b/sys/vm/vm_map.h @@ -233,7 +233,6 @@ vm_map_modflags(vm_map_t map, vm_flags_t set, vm_flags_t clear) */ struct vmspace { struct vm_map vm_map; /* VM address map */ - struct pmap vm_pmap; /* private physical map */ struct shmmap_state *vm_shm; /* SYS5 shared memory private data XXX */ segsz_t vm_swrss; /* resident set size before last swap */ segsz_t vm_tsize; /* text size (pages) XXX */ @@ -243,6 +242,12 @@ struct vmspace { caddr_t vm_daddr; /* (c) user virtual address of data */ caddr_t vm_maxsaddr; /* user VA at max stack growth */ int vm_refcnt; /* number of references */ + /* + * Keep the PMAP last, so that CPU-specific variations of that + * structure on a single architecture don't result in offset + * variations of the machine-independent fields in the vmspace. + */ + struct pmap vm_pmap; /* private physical map */ }; #ifdef _KERNEL |