Up to [cvs.NetBSD.org] / src / sys / arch / i386 / include
Request diff between arbitrary revisions
Default branch: MAIN
Current tag: MAIN
Revision 1.76 / (download) - annotate - [select for diffs], Tue Nov 13 14:10:24 2012 UTC (6 months ago) by chs
Branch: MAIN
CVS Tags: yamt-pagecache-base8,
yamt-pagecache-base7,
tls-maxphys-nbase,
tls-maxphys-base,
khorben-n900,
agc-symver-base,
agc-symver,
HEAD
Changes since 1.75: +2 -2
lines
Diff to previous 1.75 (colored)
bump VM_PHYSSEG_MAX to 32, we've seen a system where 16 wasn't enough.
Revision 1.75 / (download) - annotate - [select for diffs], Wed Aug 15 08:10:28 2012 UTC (9 months ago) by sborrill
Branch: MAIN
CVS Tags: yamt-pagecache-base6
Branch point for: tls-maxphys
Changes since 1.74: +2 -2
lines
Diff to previous 1.74 (colored)
Bump VM_PHYSSEG_MAX to 16 from 10. Modern IBM hardware requires VM_PHYSSEG_MAX to be turned up to 11 to avoid an early panic.
Revision 1.74 / (download) - annotate - [select for diffs], Mon May 7 16:16:44 2012 UTC (12 months, 2 weeks ago) by joerg
Branch: MAIN
CVS Tags: yamt-pagecache-base5,
jmcneill-usbmp-base10
Changes since 1.73: +2 -2
lines
Diff to previous 1.73 (colored)
Raise per-image text size limit to 256MB. 64MB has seen already, so provide some margin of grows.
Revision 1.73 / (download) - annotate - [select for diffs], Sun Feb 19 10:39:06 2012 UTC (15 months ago) by cherry
Branch: MAIN
CVS Tags: yamt-pagecache-base4,
jmcneill-usbmp-base9,
jmcneill-usbmp-base8,
jmcneill-usbmp-base7,
jmcneill-usbmp-base6,
jmcneill-usbmp-base5,
jmcneill-usbmp-base4,
jmcneill-usbmp-base3
Changes since 1.72: +2 -2
lines
Diff to previous 1.72 (colored)
Removing remaining references to the alternate PTE space. Modify documentation appropriately
Revision 1.72 / (download) - annotate - [select for diffs], Sun Nov 14 13:33:21 2010 UTC (2 years, 6 months ago) by uebayasi
Branch: MAIN
CVS Tags: yamt-pagecache-base3,
yamt-pagecache-base2,
yamt-pagecache-base,
uebayasi-xip-base7,
uebayasi-xip-base6,
rmind-uvmplock-nbase,
rmind-uvmplock-base,
netbsd-6-base,
matt-mips64-premerge-20101231,
jym-xensuspend-nbase,
jym-xensuspend-base,
jruoho-x86intr-base,
jruoho-x86intr,
jmcneill-usbmp-pre-base2,
jmcneill-usbmp-base2,
jmcneill-usbmp-base,
jmcneill-audiomp3-base,
jmcneill-audiomp3,
cherry-xenmp-base,
cherry-xenmp,
bouyer-quota2-nbase,
bouyer-quota2-base,
bouyer-quota2
Branch point for: yamt-pagecache,
netbsd-6,
jmcneill-usbmp
Changes since 1.71: +0 -11
lines
Diff to previous 1.71 (colored)
Move struct vm_page_md definition from vmparam.h to pmap.h, because it's used only by pmap. vmparam.h has definitions for wider audience. All GENERIC kernels build tested, except ia64. powerpc/include/booke/vmparam.h has one too, but it has no pmap.h, so it's left as is.
Revision 1.71 / (download) - annotate - [select for diffs], Sat Nov 6 15:42:45 2010 UTC (2 years, 6 months ago) by uebayasi
Branch: MAIN
CVS Tags: uebayasi-xip-base5
Changes since 1.70: +1 -2
lines
Diff to previous 1.70 (colored)
Remove incomplete, never worked dynamic run-time memory registration (uvm_page_physload(9)). This functionality will be re-added later.
Revision 1.70 / (download) - annotate - [select for diffs], Fri Mar 6 20:31:49 2009 UTC (4 years, 2 months ago) by joerg
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9,
yamt-nfs-mp-base8,
yamt-nfs-mp-base7,
yamt-nfs-mp-base6,
yamt-nfs-mp-base5,
yamt-nfs-mp-base4,
yamt-nfs-mp-base3,
yamt-nfs-mp-base11,
yamt-nfs-mp-base10,
uebayasi-xip-base4,
uebayasi-xip-base3,
uebayasi-xip-base2,
uebayasi-xip-base1,
uebayasi-xip-base,
nick-hppapmap-base4,
nick-hppapmap-base3,
nick-hppapmap-base,
matt-premerge-20091211,
jymxensuspend-base
Branch point for: uebayasi-xip,
rmind-uvmplock
Changes since 1.69: +1 -8
lines
Diff to previous 1.69 (colored)
Remove SHMMAXPGS from all kernel configs. Dynamically compute the initial limit as 1/4 of the physical memory. Ensure the limit is at least 1024 pages, the old default on most platforms.
Revision 1.69 / (download) - annotate - [select for diffs], Sat Dec 13 14:07:10 2008 UTC (4 years, 5 months ago) by pooka
Branch: MAIN
CVS Tags: nick-hppapmap-base2,
mjf-devfs2-base
Branch point for: jym-xensuspend
Changes since 1.68: +4 -4
lines
Diff to previous 1.68 (colored)
_VMPARAM_H_ -> _$MACHINE_VMPARAM_H_
Revision 1.68 / (download) - annotate - [select for diffs], Wed Jan 23 19:46:44 2008 UTC (5 years, 3 months ago) by bouyer
Branch: MAIN
CVS Tags: yamt-pf42-baseX,
yamt-pf42-base4,
yamt-pf42-base3,
yamt-pf42-base2,
yamt-pf42-base,
yamt-pf42,
yamt-nfs-mp-base2,
yamt-nfs-mp-base,
yamt-lazymbuf-base15,
yamt-lazymbuf-base14,
wrstuden-revivesa-base-4,
wrstuden-revivesa-base-3,
wrstuden-revivesa-base-2,
wrstuden-revivesa-base-1,
wrstuden-revivesa-base,
wrstuden-revivesa,
simonb-wapbl-nbase,
simonb-wapbl-base,
simonb-wapbl,
nick-net80211-sync-base,
nick-net80211-sync,
netbsd-5-base,
netbsd-5-2-RELEASE,
netbsd-5-2-RC1,
netbsd-5-2,
netbsd-5-1-RELEASE,
netbsd-5-1-RC4,
netbsd-5-1-RC3,
netbsd-5-1-RC2,
netbsd-5-1-RC1,
netbsd-5-1-2-RELEASE,
netbsd-5-1-1-RELEASE,
netbsd-5-1,
netbsd-5-0-RELEASE,
netbsd-5-0-RC4,
netbsd-5-0-RC3,
netbsd-5-0-RC2,
netbsd-5-0-RC1,
netbsd-5-0-2-RELEASE,
netbsd-5-0-1-RELEASE,
netbsd-5-0,
netbsd-5,
mjf-devfs-base,
matt-nb5-pq3-base,
matt-nb5-pq3,
matt-nb5-mips64-u2-k2-k4-k7-k8-k9,
matt-nb5-mips64-u1-k1-k5,
matt-nb5-mips64-premerge-20101231,
matt-nb5-mips64-premerge-20091211,
matt-nb5-mips64-k15,
matt-nb5-mips64,
matt-nb4-mips64-k7-u2a-k9b,
matt-mips64-base2,
matt-armv6-nbase,
keiichi-mipv6-nbase,
keiichi-mipv6-base,
keiichi-mipv6,
hpcarm-cleanup-nbase,
hpcarm-cleanup-base,
haad-nbase2,
haad-dm-base2,
haad-dm-base1,
haad-dm-base,
haad-dm,
ad-socklock-base1,
ad-audiomp2-base,
ad-audiomp2
Branch point for: yamt-nfs-mp,
nick-hppapmap,
mjf-devfs2
Changes since 1.67: +3 -6
lines
Diff to previous 1.67 (colored)
Merge the bouyer-xeni386 branch. This brings in PAE support to NetBSD xeni386
(domU only). PAE support is enabled by 'options PAE', see the new XEN3PAE_DOMU
and INSTALL_XEN3PAE_DOMU kernel config files.
See the comments in arch/i386/include/{pte.h,pmap.h} to see how it works.
In short, we still handle it as a 2-level MMU, with the second level page
directory being 4 pages in size. pmap switching is done by switching the
L2 pages in the L3 entries, instead of loading %cr3. This is almost required
by Xen, which handle the last L2 page (the one mapping 0xc0000000 - 0xffffffff)
in a very special way. But this approach should also work for native PAE
support if ever supported (in fact, the pmap should almost suport native
PAE, what's missing is bootstrap code in locore.S).
Revision 1.67 / (download) - annotate - [select for diffs], Sun Jan 20 13:43:38 2008 UTC (5 years, 4 months ago) by yamt
Branch: MAIN
CVS Tags: bouyer-xeni386-nbase,
bouyer-xeni386-base
Changes since 1.66: +7 -16
lines
Diff to previous 1.66 (colored)
- rewrite P->V tracking. - use a hash rather than SPLAY trees. SPLAY tree is a wrong algorithm to use here. will be revisited if it slows down anything other than micro-benchmarks. - optimize the single mapping case (it's a common case) by embedding an entry into mdpage. - don't keep a pmap pointer as it can be obtained from ptp. (discussed on port-i386 some years ago.) ideally, a single paddr_t should be enough to describe a pte. but it needs some more thoughts as it can increase computational costs. - pmap_enter: simplify and fix races with pmap_sync_pv. - don't bother to lock pm_obj[i] where i > 0, unless DIAGNOSTIC. - kill mp_link to save space. - add many KASSERTs.
Revision 1.66 / (download) - annotate - [select for diffs], Fri Jan 11 20:00:16 2008 UTC (5 years, 4 months ago) by bouyer
Branch: MAIN
Changes since 1.65: +11 -2
lines
Diff to previous 1.65 (colored)
Merge the bouyer-xeni386 branch to head, at tag bouyer-xeni386-merge1 (the branch is still active and will see i386PAE support developement). Sumary of changes: - switch xeni386 to the x86/x86/pmap.c, and the xen/x86/x86_xpmap.c pmap bootstrap. - merge back most of xen/i386/ to i386/i386 - change the build to reduce diffs between i386 and amd64 in file locations - remove include files that were identical to the i386/amd64 counterparts, the build will find them via the xen-ma/machine link.
Revision 1.65 / (download) - annotate - [select for diffs], Sun Jan 6 20:53:06 2008 UTC (5 years, 4 months ago) by ad
Branch: MAIN
CVS Tags: matt-armv6-base
Changes since 1.64: +2 -1
lines
Diff to previous 1.64 (colored)
#include <sys/mutex.h>
Revision 1.64 / (download) - annotate - [select for diffs], Thu Oct 18 15:28:37 2007 UTC (5 years, 7 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-kmem-base3,
yamt-kmem-base2,
yamt-kmem-base,
yamt-kmem,
vmlocking2-base3,
vmlocking2-base2,
vmlocking2-base1,
vmlocking2,
vmlocking-nbase,
reinoud-bufcleanup-nbase,
reinoud-bufcleanup-base,
jmcneill-pm-base,
jmcneill-base,
cube-autoconf-base,
cube-autoconf,
bouyer-xenamd64-base2,
bouyer-xenamd64-base
Branch point for: mjf-devfs,
bouyer-xeni386
Changes since 1.63: +5 -5
lines
Diff to previous 1.63 (colored)
merge yamt-x86pmap branch. - reduce differences between amd64 and i386. notably, share pmap.c between them. it makes several i386 pmap improvements available to amd64, including tlb shootdown reduction and bug fixes from Stephan Uphoff. - implement deferred pmap switching for amd64. - remove LARGEPAGES option. always use large pages if available. also, make it work on amd64.
Revision 1.63 / (download) - annotate - [select for diffs], Wed Oct 17 19:54:57 2007 UTC (5 years, 7 months ago) by garbled
Branch: MAIN
CVS Tags: yamt-x86pmap-base4
Changes since 1.62: +1 -1
lines
Diff to previous 1.62 (colored)
Merge the ppcoea-renovation branch to HEAD. This branch was a major cleanup and rototill of many of the various OEA cpu based PPC ports that focused on sharing as much code as possible between the various ports to eliminate near-identical copies of files in every tree. Additionally there is a new PIC system that unifies the interface to interrupt code for all different OEA ppc arches. The work for this branch was done by a variety of people, too long to list here. TODO: bebox still needs work to complete the transition to -renovation. ofppc still needs a bunch of work, which I will be looking at. ev64260 still needs to be renovated amigappc was not attempted. NOTES: pmppc was removed as an arch, and moved to a evbppc target.
Revision 1.62 / (download) - annotate - [select for diffs], Wed Aug 29 23:38:05 2007 UTC (5 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base3,
yamt-x86pmap-base2,
yamt-x86pmap-base,
vmlocking-base,
ppcoea-renovation-base,
nick-csl-alignment-base5
Branch point for: yamt-x86pmap,
bouyer-xenamd64
Changes since 1.61: +6 -5
lines
Diff to previous 1.61 (colored)
Merge most x86 changes from the vmlocking branch, except the threaded soft interrupt stuff. This is mostly comprised of changes to the pmap modules to work on multiprocessor systems without kernel_lock, and changes to speed up tlb shootdowns.
Revision 1.61 / (download) - annotate - [select for diffs], Wed Sep 27 17:10:34 2006 UTC (6 years, 7 months ago) by cube
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5,
yamt-splraiseipl-base4,
yamt-splraiseipl-base3,
yamt-splraiseipl-base2,
yamt-idlelwp-base8,
yamt-idlelwp,
wrstuden-fixsa-newbase,
wrstuden-fixsa-base-1,
wrstuden-fixsa-base,
wrstuden-fixsa,
thorpej-atomic-base,
thorpej-atomic,
reinoud-bufcleanup,
post-newlock2-merge,
nick-csl-alignment-base,
newlock2-nbase,
newlock2-base,
netbsd-4-base,
netbsd-4-0-RELEASE,
netbsd-4-0-RC5,
netbsd-4-0-RC4,
netbsd-4-0-RC3,
netbsd-4-0-RC2,
netbsd-4-0-RC1,
netbsd-4-0-1-RELEASE,
netbsd-4-0,
netbsd-4,
mjf-ufs-trans-base,
mjf-ufs-trans,
matt-nb4-arm-base,
matt-nb4-arm,
matt-mips64-base,
matt-mips64,
hpcarm-cleanup,
ad-audiomp-base,
ad-audiomp
Branch point for: vmlocking,
ppcoea-renovation,
nick-csl-alignment,
matt-armv6,
jmcneill-pm
Changes since 1.60: +2 -2
lines
Diff to previous 1.60 (colored)
This is again that time of the millenium where we have to crank up a few static limits to meet modern bloat requirements. VM_PHYSSEG_MAX needs it to run on Intel's D946GZIS motherboard, as reported by rix on #NetBSD-code on freenode. This has a consequence on the initial number of possible extent allocations for iomem_ex, so increase that value too. While there, clarify the action to be taken when VM_PHYSSEG_MAX is maxed out. Do that on both amd64 and i386 because the causes, the effects and the code are mostly the same.
Revision 1.60 / (download) - annotate - [select for diffs], Tue Sep 20 16:38:58 2005 UTC (7 years, 8 months ago) by christos
Branch: MAIN
CVS Tags: yamt-vop-base3,
yamt-vop-base2,
yamt-vop-base,
yamt-vop,
yamt-uio_vmspace-base5,
yamt-uio_vmspace,
yamt-splraiseipl-base,
yamt-readahead-pervnode,
yamt-readahead-perfile,
yamt-readahead-base3,
yamt-readahead-base2,
yamt-readahead-base,
yamt-readahead,
yamt-pdpolicy-base9,
yamt-pdpolicy-base8,
yamt-pdpolicy-base7,
yamt-pdpolicy-base6,
yamt-pdpolicy-base5,
yamt-pdpolicy-base4,
yamt-pdpolicy-base3,
yamt-pdpolicy-base2,
yamt-pdpolicy-base,
yamt-pdpolicy,
thorpej-vnode-attr-base,
thorpej-vnode-attr,
simonb-timecounters-base,
simonb-timecounters,
simonb-timcounters-final,
rpaulo-netinet-merge-pcb-base,
rpaulo-netinet-merge-pcb,
peter-altq-base,
peter-altq,
ktrace-lwp-base,
gdamore-uart-base,
gdamore-uart,
elad-kernelauth-base,
elad-kernelauth,
chap-midi-nbase,
chap-midi-base,
chap-midi,
abandoned-netbsd-4-base,
abandoned-netbsd-4
Branch point for: yamt-splraiseipl,
newlock2
Changes since 1.59: +4 -4
lines
Diff to previous 1.59 (colored)
- Bump default data size from 128M to 256M, allows the java interpreter to start up without unlimit. - Bump max data size from 2G to 3G. The actual space we are allowed to allocate is somewhere between 2G and 3G, so trying to allocate above that will fail. - Bump max stack size from 32M to 64M. Approved by fvdl
Revision 1.59 / (download) - annotate - [select for diffs], Sun Jul 17 05:29:54 2005 UTC (7 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.58: +2 -2
lines
Diff to previous 1.58 (colored)
Increase the default datasize limit to 2GB.
Revision 1.58 / (download) - annotate - [select for diffs], Mon Jan 10 05:34:51 2005 UTC (8 years, 4 months ago) by mycroft
Branch: MAIN
CVS Tags: yamt-km-base4,
yamt-km-base3,
yamt-km-base2,
yamt-km-base,
yamt-km,
netbsd-3-base,
netbsd-3-1-RELEASE,
netbsd-3-1-RC4,
netbsd-3-1-RC3,
netbsd-3-1-RC2,
netbsd-3-1-RC1,
netbsd-3-1-1-RELEASE,
netbsd-3-1,
netbsd-3-0-RELEASE,
netbsd-3-0-RC6,
netbsd-3-0-RC5,
netbsd-3-0-RC4,
netbsd-3-0-RC3,
netbsd-3-0-RC2,
netbsd-3-0-RC1,
netbsd-3-0-3-RELEASE,
netbsd-3-0-2-RELEASE,
netbsd-3-0-1-RELEASE,
netbsd-3-0,
netbsd-3,
matt-timespec,
kent-audio2-base,
kent-audio2,
kent-audio1-beforemerge
Branch point for: yamt-lazymbuf
Changes since 1.57: +2 -4
lines
Diff to previous 1.57 (colored)
Now that countless UVM bugs have been fixed, enable "topdown" memory allocation by default.
Revision 1.57 / (download) - annotate - [select for diffs], Wed May 12 09:11:03 2004 UTC (9 years ago) by yamt
Branch: MAIN
CVS Tags: kent-audio1-base,
kent-audio1
Changes since 1.56: +2 -2
lines
Diff to previous 1.56 (colored)
add a comment on mp_attrs.
Revision 1.56 / (download) - annotate - [select for diffs], Thu Oct 23 08:30:21 2003 UTC (9 years, 7 months ago) by chs
Branch: MAIN
CVS Tags: netbsd-2-base,
netbsd-2-1-RELEASE,
netbsd-2-1-RC6,
netbsd-2-1-RC5,
netbsd-2-1-RC4,
netbsd-2-1-RC3,
netbsd-2-1-RC2,
netbsd-2-1-RC1,
netbsd-2-1,
netbsd-2-0-base,
netbsd-2-0-RELEASE,
netbsd-2-0-RC5,
netbsd-2-0-RC4,
netbsd-2-0-RC3,
netbsd-2-0-RC2,
netbsd-2-0-RC1,
netbsd-2-0-3-RELEASE,
netbsd-2-0-2-RELEASE,
netbsd-2-0-1-RELEASE,
netbsd-2-0,
netbsd-2
Changes since 1.55: +4 -3
lines
Diff to previous 1.55 (colored)
rename pv_next to pv_node. use SPLAY_RIGHT() instead of expanding it inline.
Revision 1.55 / (download) - annotate - [select for diffs], Thu Oct 23 03:03:20 2003 UTC (9 years, 7 months ago) by provos
Branch: MAIN
Changes since 1.54: +5 -2
lines
Diff to previous 1.54 (colored)
changed linked list in pmap_remove_pv to a splay tree; approved: fvdl@
Revision 1.54 / (download) - annotate - [select for diffs], Sun Aug 24 17:52:33 2003 UTC (9 years, 8 months ago) by chs
Branch: MAIN
Changes since 1.53: +10 -2
lines
Diff to previous 1.53 (colored)
add support for non-executable mappings (where the hardware allows this) and make the stack and heap non-executable by default. the changes fall into two basic catagories: - pmap and trap-handler changes. these are all MD: = alpha: we already track per-page execute permission with the (software) PG_EXEC bit, so just have the trap handler pay attention to it. = i386: use a new GDT segment for %cs for processes that have no executable mappings above a certain threshold (currently the bottom of the stack). track per-page execute permission with the last unused PTE bit. = powerpc/ibm4xx: just use the hardware exec bit. = powerpc/oea: we already track per-page exec bits, but the hardware only implements non-exec mappings at the segment level. so track the number of executable mappings in each segment and turn on the no-exec segment bit iff the count is 0. adjust the trap handler to deal. = sparc (sun4m): fix our use of the hardware protection bits. fix the trap handler to recognize text faults. = sparc64: split the existing unified TSB into data and instruction TSBs, and only load TTEs into the appropriate TSB(s) for the permissions. fix the trap handler to check for execute permission. = not yet implemented: amd64, hppa, sh5 - changes in all the emulations that put a signal trampoline on the stack. instead, we now put the trampoline into a uvm_aobj and map that into the process separately. originally from openbsd, adapted for netbsd by me.
Revision 1.53 / (download) - annotate - [select for diffs], Thu Aug 7 16:28:00 2003 UTC (9 years, 9 months ago) by agc
Branch: MAIN
Changes since 1.52: +2 -6
lines
Diff to previous 1.52 (colored)
Move UCB-licensed code from 4-clause to 3-clause licence. Patches provided by Joel Baker in PR 22364, verified by myself.
Revision 1.52 / (download) - annotate - [select for diffs], Tue Jul 22 13:55:33 2003 UTC (9 years, 10 months ago) by yamt
Branch: MAIN
Changes since 1.51: +16 -9
lines
Diff to previous 1.51 (colored)
move pv_head and page attributes into md part of vm_page structure instead of having separate arrays for them. (i.e. use __HAVE_VM_PAGE_MD instead of __HAVE_PMAP_PHYSSEG.)
Revision 1.51 / (download) - annotate - [select for diffs], Wed Apr 2 07:35:59 2003 UTC (10 years, 1 month ago) by thorpej
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.50: +2 -2
lines
Diff to previous 1.50 (colored)
Use PAGE_SIZE rather than NBPG.
Revision 1.50 / (download) - annotate - [select for diffs], Sun Mar 16 19:42:09 2003 UTC (10 years, 2 months ago) by cjep
Branch: MAIN
Changes since 1.49: +2 -2
lines
Diff to previous 1.49 (colored)
kernal -> kernel
Revision 1.49 / (download) - annotate - [select for diffs], Sun Feb 23 19:13:44 2003 UTC (10 years, 2 months ago) by atatat
Branch: MAIN
Changes since 1.48: +4 -1
lines
Diff to previous 1.48 (colored)
#include opt_uvm.h in machine/vmparam.h (for those ports offering the topdown option) so that including it directly before including uvm/uvm_param.h (or uvm/uvm_extern.h which includes uvm/uvm_param.h) and attempting to use topdown won't result in a compiler error. Problem noted in private email.
Revision 1.48 / (download) - annotate - [select for diffs], Thu Feb 20 22:16:05 2003 UTC (10 years, 3 months ago) by atatat
Branch: MAIN
Changes since 1.47: +10 -1
lines
Diff to previous 1.47 (colored)
Introduce "top down" memory management for mmap()ed allocations. This means that the dynamic linker gets mapped in at the top of available user virtual memory (typically just below the stack), shared libraries get mapped downwards from that point, and calls to mmap() that don't specify a preferred address will get mapped in below those. This means that the heap and the mmap()ed allocations will grow towards each other, allowing one or the other to grow larger than before. Previously, the heap was limited to MAXDSIZ by the placement of the dynamic linker (and the process's rlimits) and the space available to mmap was hobbled by this reservation. This is currently only enabled via an *option* for the i386 platform (though other platforms are expected to follow). Add "options USE_TOPDOWN_VM" to your kernel config file, rerun config, and rebuild your kernel to take advantage of this. Note that the pmap_prefer() interface has not yet been modified to play nicely with this, so those platforms require a bit more work (most notably the sparc) before they can use this new memory arrangement. This change also introduces a VM_DEFAULT_ADDRESS() macro that picks the appropriate default address based on the size of the allocation or the size of the process's text segment accordingly. Several drivers and the SYSV SHM address assignment were changed to use this instead of each one picking their own "default".
Revision 1.47 / (download) - annotate - [select for diffs], Wed Jan 29 14:12:36 2003 UTC (10 years, 3 months ago) by drochner
Branch: MAIN
Changes since 1.46: +3 -8
lines
Diff to previous 1.46 (colored)
give some VM which was reserved for the UAREA but not used anymore back to the user and adjust some comments (which were not accurate anyway since NOREDZONE) binary compatibility note: changing VM_MAXUSER_ADDRESS might influence some sanity check in kvm_proc, where arguments on the stack are dealt with, but it was a variable anyway and noone did care...
Revision 1.46 / (download) - annotate - [select for diffs], Tue Dec 10 05:14:28 2002 UTC (10 years, 5 months ago) by thorpej
Branch: MAIN
CVS Tags: nathanw_sa_before_merge,
nathanw_sa_base,
gmcgarry_ucred_base,
gmcgarry_ucred,
gmcgarry_ctxsw_base,
gmcgarry_ctxsw,
fvdl_fs64_base
Changes since 1.45: +4 -6
lines
Diff to previous 1.45 (colored)
Use __LDPGSZ (which must be == USRTEXT) as the text address for a.out executables, and eliminate the USRTEXT constant, which was only used by the a.out exec code.
Revision 1.45 / (download) - annotate - [select for diffs], Thu Nov 15 18:06:14 2001 UTC (11 years, 6 months ago) by soren
Branch: MAIN
CVS Tags: sommerfeld_i386mpnext,
sommerfeld_i386mpbase_1,
newlock-base,
newlock,
netbsd-1-6-base,
netbsd-1-6-RELEASE,
netbsd-1-6-RC3,
netbsd-1-6-RC2,
netbsd-1-6-RC1,
netbsd-1-6-PATCH002-RELEASE,
netbsd-1-6-PATCH002-RC4,
netbsd-1-6-PATCH002-RC3,
netbsd-1-6-PATCH002-RC2,
netbsd-1-6-PATCH002-RC1,
netbsd-1-6-PATCH002,
netbsd-1-6-PATCH001-RELEASE,
netbsd-1-6-PATCH001-RC3,
netbsd-1-6-PATCH001-RC2,
netbsd-1-6-PATCH001-RC1,
netbsd-1-6-PATCH001,
netbsd-1-6,
kqueue-beforemerge,
kqueue-base,
kqueue-aftermerge,
ifpoll-base,
ifpoll,
i386mp_plus16_stable,
gehenna-devsw-base,
gehenna-devsw,
eeh-devprop-base,
eeh-devprop
Branch point for: sommerfeld_i386mp_1
Changes since 1.44: +1 -12
lines
Diff to previous 1.44 (colored)
MAXSLP is defined to be a machine-independent scheduling parameter, so move it into sys/param.h.
Revision 1.44 / (download) - annotate - [select for diffs], Sat Oct 20 00:17:47 2001 UTC (11 years, 7 months ago) by fvdl
Branch: MAIN
CVS Tags: thorpej-mips-cache-base,
thorpej-mips-cache
Changes since 1.43: +2 -3
lines
Diff to previous 1.43 (colored)
Until early last year, the i386 port had 256M of kvm, and the max. amount of kvm used for buffers was set at 70%, some 188M. Then the total amount of kvm became 1G, and the amount for buffers thus became some 716M. This is really too much, and some device drivers want to map quite a bit of kvm these days. So, cap it at 384M, which gives each buffer a little over 8k (the default FFS blocksize) physical in an 1G physram configuration.
Revision 1.43 / (download) - annotate - [select for diffs], Mon Jun 25 16:28:48 2001 UTC (11 years, 10 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-devvp-base3,
thorpej-devvp-base2,
thorpej-devvp-base,
thorpej-devvp,
pre-chs-ubcperf,
post-chs-ubcperf
Branch point for: kqueue
Changes since 1.42: +7 -9
lines
Diff to previous 1.42 (colored)
Compute the VM_* constants directly, rather than hard-coding them (with the formulas in comments).
Revision 1.42 / (download) - annotate - [select for diffs], Tue May 1 02:19:16 2001 UTC (12 years ago) by thorpej
Branch: MAIN
Changes since 1.41: +2 -4
lines
Diff to previous 1.41 (colored)
Per discussion w/ chuck and chuck, restructure the md page stuff to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD and __HAVE_PMAP_PHYSSEG.
Revision 1.41 / (download) - annotate - [select for diffs], Sun Apr 29 22:44:34 2001 UTC (12 years ago) by thorpej
Branch: MAIN
Changes since 1.40: +5 -1
lines
Diff to previous 1.40 (colored)
Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for each vm_page structure. Add a VM_MDPAGE_INIT() macro to init this data when pages are initialized by UVM. These macros are mandatory, but ports may #define them to nothing if they are not needed/used. This deprecates struct pmap_physseg. As a transitional measure, allow a port to #define PMAP_PHYSSEG so that it can continue to use it until its pmap is converted to use VM_MDPAGE_MEMBERS. Use all this stuff to eliminate a lot of extra work in the Alpha pmap module (it's smaller and faster now). Changes to other pmap modules will follow.
Revision 1.40 / (download) - annotate - [select for diffs], Wed Jan 3 20:19:33 2001 UTC (12 years, 4 months ago) by fvdl
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase,
thorpej_scsipi_beforemerge,
thorpej_scsipi_base
Branch point for: nathanw_sa
Changes since 1.39: +2 -2
lines
Diff to previous 1.39 (colored)
Bump shm max pages value to a more realistic one.
Revision 1.39 / (download) - annotate - [select for diffs], Tue Nov 14 18:01:54 2000 UTC (12 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.38: +9 -1
lines
Diff to previous 1.38 (colored)
The i386 page size is fixed -- override PAGE_SIZE, et al, so that they are compile-time constants.
Revision 1.38 / (download) - annotate - [select for diffs], Thu Nov 9 17:34:52 2000 UTC (12 years, 6 months ago) by kim
Branch: MAIN
Changes since 1.37: +2 -2
lines
Diff to previous 1.37 (colored)
BIOS memory loading messages can be enabled with DEBUG_MEMLOAD. Increase VM_PHYSSEG_MAX from 3 to 5 to avoid a panic. Suggest increasing VM_PHYSSEG_MAX in the panic message.
Revision 1.37 / (download) - annotate - [select for diffs], Sun Jun 18 18:29:04 2000 UTC (12 years, 11 months ago) by castor
Branch: MAIN
CVS Tags: sommerfeld_i386mp_houseclean,
netbsd-1-5-base,
netbsd-1-5-RELEASE,
netbsd-1-5-BETA2,
netbsd-1-5-BETA,
netbsd-1-5-ALPHA2
Branch point for: netbsd-1-5
Changes since 1.36: +2 -2
lines
Diff to previous 1.36 (colored)
Fix integer overflow in calculation of VM_MAX_KERNEL_BUF.
Revision 1.36 / (download) - annotate - [select for diffs], Fri Feb 11 19:25:15 2000 UTC (13 years, 3 months ago) by thorpej
Branch: MAIN
CVS Tags: sommerfeld_i386mpbase_20000422,
minoura-xpg4dl-base,
chs-ubc2-newbase
Branch point for: minoura-xpg4dl
Changes since 1.35: +1 -2
lines
Diff to previous 1.35 (colored)
Update for the NKMEMPAGES changes.
Revision 1.35 / (download) - annotate - [select for diffs], Fri Feb 11 07:00:13 2000 UTC (13 years, 3 months ago) by thorpej
Branch: MAIN
Changes since 1.34: +8 -8
lines
Diff to previous 1.34 (colored)
Move KERNBASE to 0xc0000000, giving the kernel a more-or-less full 1G of virtual address space, leaving userland with 3G, and update comments to match the new reality. We knew we were going to have to bite this bullet eventually, and there are a couple of outstanding PRs related to this issue (9389 and 9313). Complete solution to those PRs is going to involve some sort of run-time decision on how large kmem_map should be, as well as changing some data structure allocation strategies in UVM. However, this change will at least allow the PR submitter to simply throw resources at the problem.
Revision 1.34 / (download) - annotate - [select for diffs], Wed Jan 26 09:44:11 2000 UTC (13 years, 3 months ago) by tsutsui
Branch: MAIN
Changes since 1.33: +1 -23
lines
Diff to previous 1.33 (colored)
Remove obsoleted macros.
Revision 1.33 / (download) - annotate - [select for diffs], Sat Dec 4 21:20:34 1999 UTC (13 years, 5 months ago) by ragge
Branch: MAIN
CVS Tags: wrstuden-devbsize-base,
wrstuden-devbsize-19991221
Changes since 1.32: +4 -4
lines
Diff to previous 1.32 (colored)
CL* discarding.
Revision 1.32 / (download) - annotate - [select for diffs], Thu Jun 17 00:12:12 1999 UTC (13 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: fvdl-softdep-base,
fvdl-softdep,
comdex-fall-1999-base,
comdex-fall-1999,
chs-ubc2-base
Branch point for: wrstuden-devbsize,
thorpej_scsipi
Changes since 1.31: +1 -12
lines
Diff to previous 1.31 (colored)
PMAP_NEW is no longer optional on the i386; the old pmap's page table allocation strategy no longer works at all. Move pmap.new.* to pmap.*. To read the revision history of PMAP_NEW up until this merge, use cvs rlog of the old pmap.new.* files.
Revision 1.31 / (download) - annotate - [select for diffs], Mon Apr 26 22:46:46 1999 UTC (14 years ago) by thorpej
Branch: MAIN
Changes since 1.30: +1 -2
lines
Diff to previous 1.30 (colored)
Garbage-collect the VM_MBUF_SIZE constant. Instead, use the size (nmbclusters * mclbytes), so that the right amount of KVA space is allocated if those variables are patched.
Revision 1.30 / (download) - annotate - [select for diffs], Sat Jan 16 20:30:35 1999 UTC (14 years, 4 months ago) by chuck
Branch: MAIN
CVS Tags: netbsd-1-4-base,
netbsd-1-4-RELEASE,
netbsd-1-4-PATCH001,
kame_14_19990705,
kame_14_19990628,
kame_141_19991130,
kame
Branch point for: netbsd-1-4,
chs-ubc2
Changes since 1.29: +1 -3
lines
Diff to previous 1.29 (colored)
remove non MNN code
Revision 1.29 / (download) - annotate - [select for diffs], Thu Aug 13 21:36:05 1998 UTC (14 years, 9 months ago) by thorpej
Branch: MAIN
CVS Tags: kenh-if-detach-base,
kenh-if-detach,
chs-ubc-base,
chs-ubc
Changes since 1.28: +6 -6
lines
Diff to previous 1.28 (colored)
vm_offset_t -> {vaddr_t,paddr_t}, vm_size_t -> vsize_t
Revision 1.28 / (download) - annotate - [select for diffs], Wed Jul 8 04:38:33 1998 UTC (14 years, 10 months ago) by thorpej
Branch: MAIN
CVS Tags: eeh-paddr_t-base,
eeh-paddr_t
Changes since 1.27: +6 -2
lines
Diff to previous 1.27 (colored)
Define 2 free lists: a default, and a "first16", which is where the first 16M of RAM goes (in an effort to protect ISA DMA-safe memory).
Revision 1.27 / (download) - annotate - [select for diffs], Mon May 4 06:09:35 1998 UTC (15 years ago) by thorpej
Branch: MAIN
Changes since 1.26: +3 -3
lines
Diff to previous 1.26 (colored)
Whitespace.
Revision 1.26 / (download) - annotate - [select for diffs], Tue Feb 10 14:12:00 1998 UTC (15 years, 3 months ago) by mrg
Branch: MAIN
Changes since 1.25: +4 -1
lines
Diff to previous 1.25 (colored)
- add defopt's for UVM, UVMHIST and PMAP_NEW. - remove unnecessary UVMHIST_DECL's.
Revision 1.25 / (download) - annotate - [select for diffs], Fri Feb 6 07:22:03 1998 UTC (15 years, 3 months ago) by mrg
Branch: MAIN
Changes since 1.24: +8 -1
lines
Diff to previous 1.24 (colored)
add the i386 MD portions for UVM.
Revision 1.24 / (download) - annotate - [select for diffs], Thu Jan 15 22:20:15 1998 UTC (15 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.23: +5 -10
lines
Diff to previous 1.23 (colored)
Just commit to using MACHINE_NEW_NONCONTIG.
Revision 1.23 / (download) - annotate - [select for diffs], Tue Jan 13 12:52:32 1998 UTC (15 years, 4 months ago) by mrg
Branch: MAIN
Changes since 1.22: +23 -1
lines
Diff to previous 1.22 (colored)
this is the i386 MD portion of the MACHINE_NEW_NONCONTIG code, as written by chuck cranor. thanks to mycroft for helping me find the one little line of code i accidentally deleted while merging it. this is not enabled by default. `options MACHINE_NEW_NONCONTIG' will use this code. eventually, this should go into <machine/vmparam.h> insteaed of MACHINE_NONCONTIG.
Revision 1.22 / (download) - annotate - [select for diffs], Mon Oct 20 09:02:21 1997 UTC (15 years, 7 months ago) by fvdl
Branch: MAIN
CVS Tags: netbsd-1-3-base,
netbsd-1-3-RELEASE,
netbsd-1-3-PATCH003-CANDIDATE2,
netbsd-1-3-PATCH003-CANDIDATE1,
netbsd-1-3-PATCH003-CANDIDATE0,
netbsd-1-3-PATCH003,
netbsd-1-3-PATCH002,
netbsd-1-3-PATCH001,
netbsd-1-3-BETA,
netbsd-1-3
Changes since 1.21: +2 -2
lines
Diff to previous 1.21 (colored)
Fix typo in VM_MAX_ADDRESS.
Revision 1.21 / (download) - annotate - [select for diffs], Mon Oct 20 00:45:05 1997 UTC (15 years, 7 months ago) by fvdl
Branch: MAIN
Changes since 1.20: +4 -4
lines
Diff to previous 1.20 (colored)
Change various constants that depend on the kernel VM base address. Lower it to 0xf0000000 to give it more breathing space.
Revision 1.20 / (download) - annotate - [select for diffs], Sat Jul 12 16:19:07 1997 UTC (15 years, 10 months ago) by perry
Branch: MAIN
CVS Tags: thorpej-signal-base,
thorpej-signal,
marc-pcmcia-bp,
marc-pcmcia-base,
marc-pcmcia
Changes since 1.19: +5 -1
lines
Diff to previous 1.19 (colored)
update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson
Revision 1.19 / (download) - annotate - [select for diffs], Thu Jun 12 15:09:29 1997 UTC (15 years, 11 months ago) by mrg
Branch: MAIN
CVS Tags: bouyer-scsipi
Changes since 1.18: +1 -10
lines
Diff to previous 1.18 (colored)
bring mrg-vm-swap2 onto mainilne.
Revision 1.18 / (download) - annotate - [select for diffs], Wed Mar 5 23:51:47 1997 UTC (16 years, 2 months ago) by fvdl
Branch: MAIN
CVS Tags: mrg-vm-swap2-base,
is-newarp-before-merge
Branch point for: mrg-vm-swap2
Changes since 1.17: +6 -6
lines
Diff to previous 1.17 (colored)
Bring limits up to 'modern' standards.
Revision 1.17 / (download) - annotate - [select for diffs], Mon Dec 9 22:49:42 1996 UTC (16 years, 5 months ago) by fvdl
Branch: MAIN
CVS Tags: thorpej-setroot,
is-newarp-base
Branch point for: mrg-vm-swap,
is-newarp
Changes since 1.16: +7 -1
lines
Diff to previous 1.16 (colored)
Include VM_MAX_KERNEL_BUF constant to put a cap on buffer cache KVM usage. Override via config file possible. XXX this is a stopgap measure.
Revision 1.16 / (download) - annotate - [select for diffs], Fri Nov 15 09:21:41 1996 UTC (16 years, 6 months ago) by fvdl
Branch: MAIN
Changes since 1.15: +3 -1
lines
Diff to previous 1.15 (colored)
Add MACHINE_NONCONTIG as a define.
Revision 1.15 / (download) - annotate - [select for diffs], Thu Oct 27 04:16:34 1994 UTC (18 years, 6 months ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-2-base,
netbsd-1-2-RELEASE,
netbsd-1-2-PATCH001,
netbsd-1-2-BETA,
netbsd-1-2,
netbsd-1-1-base,
netbsd-1-1-RELEASE,
netbsd-1-1-PATCH001,
netbsd-1-1,
before_newconf_base,
before_newconf
Changes since 1.14: +3 -2
lines
Diff to previous 1.14 (colored)
new RCS ID format.
Revision 1.14 / (download) - annotate - [select for diffs], Sun Jan 16 01:36:07 1994 UTC (19 years, 4 months ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-0-base,
netbsd-1-0-RELEASE,
netbsd-1-0-PATCH1,
netbsd-1-0-PATCH06,
netbsd-1-0-PATCH05,
netbsd-1-0-PATCH04,
netbsd-1-0-PATCH03,
netbsd-1-0-PATCH02,
netbsd-1-0-PATCH0,
netbsd-1-0,
magnum-base
Branch point for: magnum
Changes since 1.13: +2 -2
lines
Diff to previous 1.13 (colored)
SHMMAXPGS now pegged at 1024, where it belongs
Revision 1.13 / (download) - annotate - [select for diffs], Wed Jan 5 16:02:40 1994 UTC (19 years, 4 months ago) by mycroft
Branch: MAIN
Changes since 1.12: +4 -4
lines
Diff to previous 1.12 (colored)
Move kernel to 0xf8000000.
Revision 1.12 / (download) - annotate - [select for diffs], Tue Jan 4 00:44:03 1994 UTC (19 years, 4 months ago) by mycroft
Branch: MAIN
Changes since 1.11: +7 -3
lines
Diff to previous 1.11 (colored)
Fix VM_{MIN,MAX}_KERNEL_ADDRESS.
Revision 1.11 / (download) - annotate - [select for diffs], Mon Jan 3 16:20:47 1994 UTC (19 years, 4 months ago) by mycroft
Branch: MAIN
Changes since 1.10: +5 -43
lines
Diff to previous 1.10 (colored)
Garbage collection.
Revision 1.10 / (download) - annotate - [select for diffs], Wed Dec 22 12:30:59 1993 UTC (19 years, 5 months ago) by cgd
Branch: MAIN
Changes since 1.9: +2 -2
lines
Diff to previous 1.9 (colored)
bump MAXSSIZ back down to 8M (from 256M, where charles put it). execve() currently allocated MAXSSIZ of address space (AND PAGE TABLES) for the stack. until that's changed, and the stack-handling code is updated to match, MAXSSIZ==256M will make execve() significantly slower than MAXSSIZ==8M.
Revision 1.9 / (download) - annotate - [select for diffs], Mon Dec 20 05:25:54 1993 UTC (19 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.8: +7 -93
lines
Diff to previous 1.8 (colored)
Cleanup and garbage collection; nothing significant. From magnum branch.
Revision 1.8 / (download) - annotate - [select for diffs], Mon Nov 15 11:41:54 1993 UTC (19 years, 6 months ago) by cgd
Branch: MAIN
Changes since 1.7: +2 -2
lines
Diff to previous 1.7 (colored)
cut down SHMMAXPGS (temporary)
Revision 1.7 / (download) - annotate - [select for diffs], Sun Nov 14 13:22:17 1993 UTC (19 years, 6 months ago) by cgd
Branch: MAIN
Changes since 1.6: +8 -1
lines
Diff to previous 1.6 (colored)
Add the System V message queue and semaphore facilities. Implemented by Daniel Boulet <danny@BouletFermat.ab.ca>
Revision 1.6 / (download) - annotate - [select for diffs], Sat Sep 4 22:21:28 1993 UTC (19 years, 8 months ago) by cgd
Branch: MAIN
Changes since 1.5: +2 -2
lines
Diff to previous 1.5 (colored)
change maximum stack size to 8M.
Revision 1.5 / (download) - annotate - [select for diffs], Sat Sep 4 00:38:47 1993 UTC (19 years, 8 months ago) by cgd
Branch: MAIN
Changes since 1.4: +2 -2
lines
Diff to previous 1.4 (colored)
decouple MAXDSIZ and MAXSSIZ. MAXSSIZ now is 2M; shouldn't need more, and saves time in exec.
Revision 1.4 / (download) - annotate - [select for diffs], Tue Jul 13 10:16:40 1993 UTC (19 years, 10 months ago) by cgd
Branch: MAIN
CVS Tags: netbsd-0-9-patch-001,
netbsd-0-9-base,
netbsd-0-9-RELEASE,
netbsd-0-9-BETA,
netbsd-0-9-ALPHA2,
netbsd-0-9-ALPHA,
netbsd-0-9
Changes since 1.3: +2 -2
lines
Diff to previous 1.3 (colored)
up default data size limit to 16M, like on freefall, so everything will compile properly with gcc2.
Revision 1.3 / (download) - annotate - [select for diffs], Fri Jun 18 06:51:05 1993 UTC (19 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.2: +2 -2
lines
Diff to previous 1.2 (colored)
convert magic numbers to network byte order, and attendent changes
Revision 1.2 / (download) - annotate - [select for diffs], Sat May 22 08:00:46 1993 UTC (20 years ago) by cgd
Branch: MAIN
Changes since 1.1: +2 -1
lines
Diff to previous 1.1 (colored)
add rcsids to everything and clean up headers
Revision 1.1 / (download) - annotate - [select for diffs], Sun Mar 21 09:45:37 1993 UTC (20 years, 2 months ago) by cgd
Branch: MAIN
Initial revision