History log of /src/sys/arch/i386/include/vmparam.h |
Revision | | Date | Author | Comments |
1.88 |
| 21-Aug-2022 |
riastradh | i386/vmparam.h: Need some constants from i386/pte.h.
These are used by VM_MIN/MAX_KERNEL_ADDRESS. pte.h is small and likely stable enough that it's not worthwhile to migrate them to vmparam.h instead.
|
1.87 |
| 20-Aug-2022 |
riastradh | x86: Split most of pmap.h into pmap_private.h or vmparam.h.
This way pmap.h only contains the MD definition of the MI pmap(9) API, which loads of things in the kernel rely on, so changing x86 pmap internals no longer requires recompiling the entire kernel every time.
Callers needing these internals must now use machine/pmap_private.h. Note: This is not x86/pmap_private.h because it contains three parts:
1. CPU-specific (different for i386/amd64) definitions used by...
2. common definitions, including Xenisms like xpmap_ptetomach, further used by...
3. more CPU-specific inlines for pmap_pte_* operations
So {amd64,i386}/pmap_private.h defines 1, includes x86/pmap_private.h for 2, and then defines 3. Maybe we should split that out into a new pmap_pte.h to reduce this trouble.
No functional change intended, other than that some .c files must include machine/pmap_private.h when previously uvm/uvm_pmap.h polluted the namespace with pmap internals.
Note: This migrates part of i386/pmap.h into i386/vmparam.h -- specifically the parts that are needed for several constants defined in vmparam.h:
VM_MAXUSER_ADDRESS VM_MAX_ADDRESS VM_MAX_KERNEL_ADDRESS VM_MIN_KERNEL_ADDRESS
Since i386 needs PDP_SIZE in vmparam.h, I added it there on amd64 too, just to keep things parallel.
|
1.86 |
| 11-Feb-2019 |
cherry | We reorganise definitions for XEN source support as follows:
XEN - common sources required for baseline XEN support. XENPV - sources required for support of XEN in PV mode. XENPVHVM - sources required for support for XEN in HVM mode. XENPVH - sources required for support for XEN in PVH mode.
|
1.85 |
| 23-Jun-2017 |
joerg | branches: 1.85.6; Recommit exec_subr.c revision 1.79: Always include a 1MB guard area beyond the end of stack. While ASLR will normally create a guard area as well, this provides a deterministic area for all binaries.
Mitigates the rest of CVE-2017-1000374 and CVE-2017-1000375 from Qualys.
Additionally, change VM_DEFAULT_ADDRESS_TOPDOWN to include user_stack_guard_size in the size reservation.
|
1.84 |
| 11-Feb-2017 |
maxv | branches: 1.84.6; Remove VM_MAX_KERNEL_BUF (unused). Looks like several other ports could do the same.
|
1.83 |
| 19-Nov-2016 |
maxv | branches: 1.83.2; Put a one-page redzone between userland and the PTE space on amd64 and i386.
The PTE space is a critical region that maps the page tree, and bugs have been found in both amd64 and i386 where the kernel would wrongly overflow userland data on this area. This kind of bug is terrible, since it allows userland to overwrite some entries of the page tree, which makes it easy to patch the kernel text and get ring0 privileges.
|
1.82 |
| 07-Aug-2016 |
dholland | Remove unused <sys/tree.h>.
|
1.81 |
| 24-Jul-2014 |
riastradh | branches: 1.81.4; 1.81.8; Add a FIRST1G page freelist to x86, for old graphics devices.
|
1.80 |
| 12-Jun-2014 |
riastradh | Tweak x86 page freelists and add x86_select_freelist.
- Add 4G freelist to i386 -- there may be higher addresses if PAE. - Add 64G and 1T freelists to amd64. - Simplify freelist setup code and condense it into a table. - Add x86_select_freelist to get a freelist guaranteed to yield addresses no greater than a prescribed maximum address.
x86_select_freelist takes a uint64_t, not a paddr_t or bus_addr_t, so that you can pass in, e.g., a 36-bit maximum address without needing to write conditionals for i386/PAE.
No objections on port-x86:
https://mail-index.netbsd.org/port-i386/2014/05/21/msg003277.html https://mail-index.netbsd.org/port-amd64/2014/05/21/msg002062.html
|
1.79 |
| 28-Jan-2014 |
christos | branches: 1.79.2; only limit bottom-up allocations, put back 3G limit on datasize.
|
1.78 |
| 28-Jan-2014 |
christos | Cut down MAXDSIZE from 3G to 2.5G otherwise bottomup allocation ends up supplying an out of bounds hint for sigcode (c001e000 > bf000000). Makes a.out binaries work again.
|
1.77 |
| 25-Jan-2014 |
christos | delete VM_DEFAULT_ADDRESS; some of those should be GC'ed because they match the default definition.
|
1.76 |
| 13-Nov-2012 |
chs | branches: 1.76.2; bump VM_PHYSSEG_MAX to 32, we've seen a system where 16 wasn't enough.
|
1.75 |
| 15-Aug-2012 |
sborrill | branches: 1.75.2; 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.
|
1.74 |
| 07-May-2012 |
joerg | Raise per-image text size limit to 256MB. 64MB has seen already, so provide some margin of grows.
|
1.73 |
| 19-Feb-2012 |
cherry | Removing remaining references to the alternate PTE space. Modify documentation appropriately
|
1.72 |
| 14-Nov-2010 |
uebayasi | branches: 1.72.8; 1.72.12; 1.72.14; 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.
|
1.71 |
| 06-Nov-2010 |
uebayasi | Remove incomplete, never worked dynamic run-time memory registration (uvm_page_physload(9)). This functionality will be re-added later.
|
1.70 |
| 06-Mar-2009 |
joerg | branches: 1.70.2; 1.70.4; 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.
|
1.69 |
| 13-Dec-2008 |
pooka | branches: 1.69.2; _VMPARAM_H_ -> _$MACHINE_VMPARAM_H_
|
1.68 |
| 23-Jan-2008 |
bouyer | branches: 1.68.6; 1.68.10; 1.68.18; 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).
|
1.67 |
| 20-Jan-2008 |
yamt | - 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.
|
1.66 |
| 11-Jan-2008 |
bouyer | 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.
|
1.65 |
| 06-Jan-2008 |
ad | #include <sys/mutex.h>
|
1.64 |
| 18-Oct-2007 |
yamt | branches: 1.64.2; 1.64.8; 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.
|
1.63 |
| 17-Oct-2007 |
garbled | 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.
|
1.62 |
| 29-Aug-2007 |
ad | branches: 1.62.2; 1.62.4; 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.
|
1.61 |
| 27-Sep-2006 |
cube | branches: 1.61.8; 1.61.16; 1.61.22; 1.61.26; 1.61.28; 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.
|
1.60 |
| 20-Sep-2005 |
christos | branches: 1.60.26; 1.60.28; - 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
|
1.59 |
| 17-Jul-2005 |
christos | Increase the default datasize limit to 2GB.
|
1.58 |
| 10-Jan-2005 |
mycroft | branches: 1.58.10; Now that countless UVM bugs have been fixed, enable "topdown" memory allocation by default.
|
1.57 |
| 12-May-2004 |
yamt | add a comment on mp_attrs.
|
1.56 |
| 23-Oct-2003 |
chs | rename pv_next to pv_node. use SPLAY_RIGHT() instead of expanding it inline.
|
1.55 |
| 23-Oct-2003 |
provos | changed linked list in pmap_remove_pv to a splay tree; approved: fvdl@
|
1.54 |
| 24-Aug-2003 |
chs | 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.
|
1.53 |
| 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.52 |
| 22-Jul-2003 |
yamt | 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.)
|
1.51 |
| 02-Apr-2003 |
thorpej | branches: 1.51.2; Use PAGE_SIZE rather than NBPG.
|
1.50 |
| 16-Mar-2003 |
cjep | kernal -> kernel
|
1.49 |
| 23-Feb-2003 |
atatat | #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.
|
1.48 |
| 20-Feb-2003 |
atatat | 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".
|
1.47 |
| 29-Jan-2003 |
drochner | 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...
|
1.46 |
| 10-Dec-2002 |
thorpej | 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.
|
1.45 |
| 15-Nov-2001 |
soren | branches: 1.45.2; MAXSLP is defined to be a machine-independent scheduling parameter, so move it into sys/param.h.
|
1.44 |
| 20-Oct-2001 |
fvdl | 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.
|
1.43 |
| 25-Jun-2001 |
thorpej | branches: 1.43.4; Compute the VM_* constants directly, rather than hard-coding them (with the formulas in comments).
|
1.42 |
| 01-May-2001 |
thorpej | 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.
|
1.41 |
| 29-Apr-2001 |
thorpej | 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.
|
1.40 |
| 03-Jan-2001 |
fvdl | branches: 1.40.4; Bump shm max pages value to a more realistic one.
|
1.39 |
| 14-Nov-2000 |
thorpej | The i386 page size is fixed -- override PAGE_SIZE, et al, so that they are compile-time constants.
|
1.38 |
| 09-Nov-2000 |
kim | 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.
|
1.37 |
| 18-Jun-2000 |
castor | branches: 1.37.2; Fix integer overflow in calculation of VM_MAX_KERNEL_BUF.
|
1.36 |
| 11-Feb-2000 |
thorpej | branches: 1.36.4; Update for the NKMEMPAGES changes.
|
1.35 |
| 11-Feb-2000 |
thorpej | 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.
|
1.34 |
| 26-Jan-2000 |
tsutsui | Remove obsoleted macros.
|
1.33 |
| 04-Dec-1999 |
ragge | CL* discarding.
|
1.32 |
| 17-Jun-1999 |
thorpej | branches: 1.32.2; 1.32.8; 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.
|
1.31 |
| 26-Apr-1999 |
thorpej | 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.
|
1.30 |
| 16-Jan-1999 |
chuck | branches: 1.30.2; 1.30.4; remove non MNN code
|
1.29 |
| 13-Aug-1998 |
thorpej | vm_offset_t -> {vaddr_t,paddr_t}, vm_size_t -> vsize_t
|
1.28 |
| 08-Jul-1998 |
thorpej | 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).
|
1.27 |
| 04-May-1998 |
thorpej | Whitespace.
|
1.26 |
| 10-Feb-1998 |
mrg | - add defopt's for UVM, UVMHIST and PMAP_NEW. - remove unnecessary UVMHIST_DECL's.
|
1.25 |
| 06-Feb-1998 |
mrg | add the i386 MD portions for UVM.
|
1.24 |
| 15-Jan-1998 |
thorpej | Just commit to using MACHINE_NEW_NONCONTIG.
|
1.23 |
| 13-Jan-1998 |
mrg | 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.
|
1.22 |
| 20-Oct-1997 |
fvdl | Fix typo in VM_MAX_ADDRESS.
|
1.21 |
| 20-Oct-1997 |
fvdl | Change various constants that depend on the kernel VM base address. Lower it to 0xf0000000 to give it more breathing space.
|
1.20 |
| 12-Jul-1997 |
perry | update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson
|
1.19 |
| 12-Jun-1997 |
mrg | bring mrg-vm-swap2 onto mainilne.
|
1.18 |
| 05-Mar-1997 |
fvdl | branches: 1.18.2; Bring limits up to 'modern' standards.
|
1.17 |
| 09-Dec-1996 |
fvdl | branches: 1.17.4; 1.17.6; 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.
|
1.16 |
| 15-Nov-1996 |
fvdl | Add MACHINE_NONCONTIG as a define.
|
1.15 |
| 27-Oct-1994 |
cgd | new RCS ID format.
|
1.14 |
| 16-Jan-1994 |
cgd | branches: 1.14.2; SHMMAXPGS now pegged at 1024, where it belongs
|
1.13 |
| 05-Jan-1994 |
mycroft | Move kernel to 0xf8000000.
|
1.12 |
| 04-Jan-1994 |
mycroft | Fix VM_{MIN,MAX}_KERNEL_ADDRESS.
|
1.11 |
| 03-Jan-1994 |
mycroft | Garbage collection.
|
1.10 |
| 22-Dec-1993 |
cgd | 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.
|
1.9 |
| 20-Dec-1993 |
mycroft | Cleanup and garbage collection; nothing significant. From magnum branch.
|
1.8 |
| 15-Nov-1993 |
cgd | cut down SHMMAXPGS (temporary)
|
1.7 |
| 14-Nov-1993 |
cgd | Add the System V message queue and semaphore facilities. Implemented by Daniel Boulet <danny@BouletFermat.ab.ca>
|
1.6 |
| 04-Sep-1993 |
cgd | branches: 1.6.2; change maximum stack size to 8M.
|
1.5 |
| 04-Sep-1993 |
cgd | decouple MAXDSIZ and MAXSSIZ. MAXSSIZ now is 2M; shouldn't need more, and saves time in exec.
|
1.4 |
| 13-Jul-1993 |
cgd | up default data size limit to 16M, like on freefall, so everything will compile properly with gcc2.
|
1.3 |
| 18-Jun-1993 |
cgd | convert magic numbers to network byte order, and attendent changes
|
1.2 |
| 22-May-1993 |
cgd | add rcsids to everything and clean up headers
|
1.1 |
| 21-Mar-1993 |
cgd | branches: 1.1.1; Initial revision
|
1.1.1.1 |
| 21-Mar-1993 |
cgd | initial import of 386bsd-0.1 sources
|
1.6.2.4 |
| 26-Oct-1993 |
mycroft | Add a default SHMMAXPGS.
|
1.6.2.3 |
| 15-Oct-1993 |
mycroft | I386_CR3PAT could not justify its existence.
|
1.6.2.2 |
| 15-Oct-1993 |
mycroft | Major cleanup of include files and constants.
|
1.6.2.1 |
| 10-Oct-1993 |
mycroft | Remove old and non-working macros.
|
1.14.2.2 |
| 16-Jan-1994 |
cgd | SHMMAXPGS now pegged at 1024, where it belongs
|
1.14.2.1 |
| 16-Jan-1994 |
cgd | file vmparam.h was added on branch magnum on 1994-01-16 01:36:08 +0000
|
1.17.6.1 |
| 12-Mar-1997 |
is | Merge in Changes from The Trunk.
|
1.17.4.1 |
| 12-Feb-1997 |
mrg | initial work for dynamic swap additions.
|
1.18.2.1 |
| 04-May-1997 |
mrg | re-merge mrg-vm-swap into -current, and call it mrg-vm-swap2.
|
1.30.4.2 |
| 04-Jul-1999 |
chs | add UBC parameters.
|
1.30.4.1 |
| 21-Jun-1999 |
thorpej | Sync w/ -current.
|
1.30.2.1 |
| 19-Feb-2000 |
he | Apply patch (requested by thorpej): Move KERNBASE to 0xc0000000, giving the kernel a more-or-less full 1GB of virtual address space, leaving userland with 3GB, and update comments to match the new reality.
|
1.32.8.1 |
| 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
1.32.2.3 |
| 05-Jan-2001 |
bouyer | Sync with HEAD
|
1.32.2.2 |
| 22-Nov-2000 |
bouyer | Sync with HEAD.
|
1.32.2.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
1.36.4.1 |
| 22-Jun-2000 |
minoura | Sync w/ netbsd-1-5-base.
|
1.37.2.1 |
| 30-Mar-2001 |
he | Pull up revision 1.40 (requested by fvdl): Add some required Linux emulation bits to support the Linux version of VMware.
|
1.40.4.5 |
| 11-Dec-2002 |
thorpej | Sync with HEAD.
|
1.40.4.4 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.40.4.3 |
| 22-Oct-2001 |
nathanw | Catch up to -current.
|
1.40.4.2 |
| 24-Aug-2001 |
nathanw | Catch up with -current.
|
1.40.4.1 |
| 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.43.4.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.45.2.2 |
| 15-Nov-2001 |
soren | MAXSLP is defined to be a machine-independent scheduling parameter, so move it into sys/param.h.
|
1.45.2.1 |
| 15-Nov-2001 |
soren | file vmparam.h was added on branch sommerfeld_i386mp_1 on 2001-11-15 18:06:15 +0000
|
1.51.2.5 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.51.2.4 |
| 17-Jan-2005 |
skrll | Sync with HEAD.
|
1.51.2.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.51.2.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.51.2.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.58.10.6 |
| 04-Feb-2008 |
yamt | sync with head.
|
1.58.10.5 |
| 21-Jan-2008 |
yamt | sync with head
|
1.58.10.4 |
| 27-Oct-2007 |
yamt | sync with head.
|
1.58.10.3 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.58.10.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.58.10.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.60.28.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.60.26.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.61.28.3 |
| 23-Mar-2008 |
matt | sync with HEAD
|
1.61.28.2 |
| 09-Jan-2008 |
matt | sync with HEAD
|
1.61.28.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.61.26.2 |
| 26-Oct-2007 |
joerg | Sync with HEAD.
Follow the merge of pmap.c on i386 and amd64 and move pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup code to restore CR4 before jumping back into kernel space as the large page option might cover that.
|
1.61.26.1 |
| 03-Sep-2007 |
jmcneill | Sync with HEAD.
|
1.61.22.1 |
| 03-Sep-2007 |
skrll | Sync with HEAD.
|
1.61.16.1 |
| 03-Oct-2007 |
garbled | Sync with HEAD
|
1.61.8.3 |
| 23-Oct-2007 |
ad | Sync with head.
|
1.61.8.2 |
| 05-Apr-2007 |
ad | Fix the pmap locking.
|
1.61.8.1 |
| 13-Mar-2007 |
ad | Pull in the initial set of changes for the vmlocking branch.
|
1.62.4.1 |
| 25-Oct-2007 |
bouyer | Sync with HEAD.
|
1.62.2.1 |
| 23-Sep-2007 |
yamt | - sync with amd64. - pmap_alloc_level: remove fast call special case. - tweak some printf to work for both of LP64 and LP32. - remove machdep.nkpde sysctl. - remove automatic adjustment of nkpde for now. will revisit later.
|
1.64.8.5 |
| 20-Jan-2008 |
bouyer | Sync with HEAD
|
1.64.8.4 |
| 13-Jan-2008 |
bouyer | Reorganize so that there are less #ifdef XEN
|
1.64.8.3 |
| 10-Jan-2008 |
bouyer | Change xeni386 build to match xenamd64: - machine/ points to xen/include/i386 - remove includes that were identical to the i386/include/ ones; the build will find them though the xen-ma/machine link. - include xen files using xen/ not machine/
|
1.64.8.2 |
| 08-Jan-2008 |
bouyer | Sync with HEAD
|
1.64.8.1 |
| 11-Dec-2007 |
bouyer | Switch i386 to x86/x86/pmap.c
|
1.64.2.1 |
| 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.68.18.2 |
| 28-Apr-2009 |
skrll | Sync with HEAD.
|
1.68.18.1 |
| 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.68.10.1 |
| 04-May-2009 |
yamt | sync with head.
|
1.68.6.1 |
| 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.69.2.3 |
| 10-Jan-2011 |
jym | Sync with HEAD
|
1.69.2.2 |
| 01-Nov-2009 |
jym | Sync with HEAD.
|
1.69.2.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.70.4.1 |
| 05-Mar-2011 |
rmind | sync with head
|
1.70.2.3 |
| 16-Nov-2010 |
uebayasi | Sync with HEAD.
|
1.70.2.2 |
| 26-Apr-2010 |
uebayasi | Remove the unfinished code to add a memory segment after uvm_page_init(). It doesn't even compile.
(In the future, we should allocate struct vm_page [] on the added memory segment for NUMA's sake.)
|
1.70.2.1 |
| 23-Feb-2010 |
uebayasi | Convert all VM_MDPAGE_INIT()'s to take struct vm_page_md * and paddr_t.
|
1.72.14.1 |
| 15-Aug-2012 |
riz | Pull up following revision(s) (requested by sborrill in ticket #501): sys/arch/amd64/include/vmparam.h: revision 1.31 sys/arch/i386/include/vmparam.h: revision 1.75 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. 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.
|
1.72.12.2 |
| 02-Jun-2012 |
mrg | sync to latest -current.
|
1.72.12.1 |
| 24-Feb-2012 |
mrg | sync to -current.
|
1.72.8.5 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.72.8.4 |
| 16-Jan-2013 |
yamt | sync with (a bit old) head
|
1.72.8.3 |
| 30-Oct-2012 |
yamt | sync with head
|
1.72.8.2 |
| 23-May-2012 |
yamt | sync with head.
|
1.72.8.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.75.2.3 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.75.2.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.75.2.1 |
| 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.76.2.1 |
| 18-May-2014 |
rmind | sync with head
|
1.79.2.1 |
| 10-Aug-2014 |
tls | Rebase.
|
1.81.8.2 |
| 20-Mar-2017 |
pgoyette | Sync with HEAD
|
1.81.8.1 |
| 07-Jan-2017 |
pgoyette | Sync with HEAD. (Note that most of these changes are simply $NetBSD$ tag issues.)
|
1.81.4.3 |
| 28-Aug-2017 |
skrll | Sync with HEAD
|
1.81.4.2 |
| 05-Dec-2016 |
skrll | Sync with HEAD
|
1.81.4.1 |
| 05-Oct-2016 |
skrll | Sync with HEAD
|
1.83.2.1 |
| 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.84.6.1 |
| 31-Aug-2017 |
bouyer | Pull up following revision(s) (requested by joerg in ticket #234): sys/arch/amd64/include/vmparam.h: revision 1.43 sys/kern/exec_subr.c: revision 1.79 lib/libpthread/pthread_int.h: revision 1.94 sys/arch/mips/include/vmparam.h: revision 1.58 sys/arch/mips/include/vmparam.h: revision 1.59 lib/libpthread/TODO: revision 1.19 sys/arch/powerpc/include/vmparam.h: revision 1.20 sys/arch/riscv/include/vmparam.h: revision 1.2 sys/arch/riscv/include/vmparam.h: revision 1.3 sys/arch/i386/include/vmparam.h: revision 1.85 tests/lib/libpthread/t_join.c: revision 1.9 sys/uvm/uvm_meter.c: revision 1.66 sys/uvm/uvm_param.h: revision 1.36 sys/kern/exec_subr.c: revision 1.80 sys/uvm/uvm_param.h: revision 1.37 sys/kern/exec_subr.c: revision 1.81 sys/kern/exec_subr.c: revision 1.82 lib/libpthread/pthread_attr_getguardsize.3: revision 1.4 lib/libpthread/pthread.c: revision 1.148 lib/libpthread/pthread_attr.c: revision 1.17 sys/arch/amd64/include/vmparam.h: revision 1.42 Always include a 1MB guard area beyond the end of stack. While ASLR will normally create a guard area as well, this provides a deterministic area for all binaries. Mitigates the rest of CVE-2017-1000374 and CVE-2017-1000375 from Qualys. Revert for the moment, creates problems on i386. Recommit exec_subr.c revision 1.79: Always include a 1MB guard area beyond the end of stack. While ASLR will normally create a guard area as well, this provides a deterministic area for all binaries. Mitigates the rest of CVE-2017-1000374 and CVE-2017-1000375 from Qualys. Additionally, change VM_DEFAULT_ADDRESS_TOPDOWN to include user_stack_guard_size in the size reservation. Update VM_DEFAULT_ADDRESS32_TOPDOWN to include guard area. Export the guard size of the main thread via vm.guard_size. Add a complementary writable sysctl for the initial guard size of threads created via pthread_create. Let the existing attribut accessors do the right thing. Raise the default guard size for threads to 64KB.
|
1.85.6.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|