Date: Wed, 26 Dec 2007 21:32:43 GMT From: Marcel Moolenaar <marcel@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 131726 for review Message-ID: <200712262132.lBQLWhkR062485@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=131726 Change 131726 by marcel@marcel_cluster on 2007/12/26 21:32:20 Move the vm_pmap field to the end of struct vmspace. This allows for a single version of userspace (and in particular libkvm) even though different variants of the CPU within a platform/architecture require variations in struct pmap. The MI fields of struct vmspace do not end up at different offsets when struct pmap varies in size. Affected files ... .. //depot/projects/e500/sys/vm/vm_map.h#4 edit Differences ... ==== //depot/projects/e500/sys/vm/vm_map.h#4 (text+ko) ==== @@ -233,7 +233,6 @@ */ 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 @@ 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 per-CPU variations within a + * single architecture can be handled by the same toolchain + * without having to worry about the MI fields. + */ + struct pmap vm_pmap; /* private physical map */ }; #ifdef _KERNEL
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200712262132.lBQLWhkR062485>