summaryrefslogtreecommitdiffstats
path: root/sys/vm/uma.h
Commit message (Collapse)AuthorAgeFilesLines
* - Fix the silly flag situation in UMA. Remove redundant ZFLAG/ZONE flagsjeff2003-09-191-1/+6
| | | | | | | | | | | by accepting the user supplied flags directly. Previously this was not done so that flags for the same field would not be defined in two different files. Add comments in each header instructing future developers on how now to shoot their feet. - Fix a test for !OFFPAGE which should have been a test for HASH. This would have caused a panic if we had ever destructed a malloc zone. This also opens up the possibility that other zones could use the vsetobj() method rather than a hash.
* Back out M_* changes, per decision of the TRB.imp2003-02-191-1/+1
| | | | Approved by: trb
* Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.alfred2003-01-211-1/+1
| | | | Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
* Fix typo in comments (misspelled "necessary").sheldonh2002-10-221-2/+2
|
* - Use my freebsd email alias in the copyright.jeff2002-09-191-2/+1
| | | | - Remove redundant instances of my email alias in the file summary.
* - Split UMA_ZFLAG_OFFPAGE into UMA_ZFLAG_OFFPAGE and UMA_ZFLAG_HASH.jeff2002-09-181-6/+11
| | | | | | | - Remove all instances of the mallochash. - Stash the slab pointer in the vm page's object pointer when allocating from the kmem_obj. - Use the overloaded object pointer to find slabs for malloced memory.
* Void functions cannot return values.markm2002-07-181-1/+1
|
* - Remove bogus use of kmem_alloc that was inherited from the old zonejeff2002-06-191-1/+0
| | | | | | | | | allocator. - Properly set M_ZERO when talking to the back end page allocators for non malloc zones. This forces us to zero fill pages when they are first brought into a cache. - Properly handle M_ZERO in uma_zalloc_internal. This fixes a problem where per cpu buckets weren't always getting zeroed.
* - Introduce the new M_NOVM option which tells uma to only check the currentlyjeff2002-06-171-0/+1
| | | | | | | | | | | | | | | | allocated slabs and bucket caches for free items. It will not go ask the vm for pages. This differs from M_NOWAIT in that it not only doesn't block, it doesn't even ask. - Add a new zcreate option ZONE_VM, that sets the BUCKETCACHE zflag. This tells uma that it should only allocate buckets out of the bucket cache, and not from the VM. It does this by using the M_NOVM option to zalloc when getting a new bucket. This is so that the VM doesn't recursively enter itself while trying to allocate buckets for vm_map_entry zones. If there are already allocated buckets when we get here we'll still use them but otherwise we'll skip it. - Use the ZONE_VM flag on vm map entries and pv entries on x86.
* - Changed the size element of uma_zctor_args to be size_t instead of int.arr2002-05-021-1/+1
| | | | | | | - Changed uma_zcreate to accept the size argument as a size_t intead of int. Approved by: jeff
* Move the implementation of M_ZERO into UMA so that it can be passed tojeff2002-04-301-6/+5
| | | | | | uma_zalloc and friends. Remove this functionality from the malloc wrapper. Document this change in uma.h and adjust variable names in uma_core.
* Add a new zone flag UMA_ZONE_MTXCLASS. This puts the zone in it's ownjeff2002-04-291-0/+1
| | | | | | | mutex class. Currently this is only used for kmapentzone because kmapents are are potentially allocated when freeing memory. This is not dangerous though because no other allocations will be done while holding the kmapentzone lock.
* Implement uma_zdestroy(). It's prototype changed slightly. I decided that Ijeff2002-04-081-7/+2
| | | | | | | | didn't like the wait argument and that if you were removing a zone it had better be empty. Also, I broke out part of hash_expand and made a seperate hash_free() for use in uma_zdestroy.
* Spelling correction; s/seperate/separate/gjeff2002-04-071-1/+1
| | | | Submitted by: eric
* Add uma_zone_set_max() to add enforced limits to non vm obj backed zones.jeff2002-03-201-0/+10
|
* This is the first part of the new kernel memory allocator. This replacesjeff2002-03-191-0/+420
malloc(9) and vm_zone with a slab like allocator. Reviewed by: arch@
OpenPOWER on IntegriCloud