summaryrefslogtreecommitdiff
path: root/sys/kern/subr_pool.c
AgeCommit message (Expand)Author
2018-02-06slightly randomize the order that new pages populate their item lists in.David Gwynne
2018-01-18While booting it does not make sense to wait for memory, there isAlexander Bluhm
2017-08-13New flag PR_RWLOCK for pool_init(9) makes the pool use rwlocks insteadPhilip Guenther
2017-07-12Compute the level of contention only once.Visa Hankala
2017-07-12When there is no contention on a pool cache lock, lower the numberVisa Hankala
2017-06-23set the alignment of the per cpu cache structures to CACHELINESIZE.David Gwynne
2017-06-23change the semantic for calculating when to grow the size of a cache list.David Gwynne
2017-06-19dynamically scale the size of the per cpu cache lists.David Gwynne
2017-06-16add garbage collection of unused lists percpu cached items.David Gwynne
2017-06-16split returning an item to the pool pages out of pool_put as pool_do_put.David Gwynne
2017-06-15report contention on caches global data to userland.David Gwynne
2017-06-15white space tweaks. no functional change.David Gwynne
2017-06-15implement the backend of the sysctls that report pool cache info.David Gwynne
2017-06-13when enabling cpu caches, check the item size against the right thingDavid Gwynne
2017-04-20Tweak lock inits to make the system runnable with witness(4)Visa Hankala
2017-02-20revert 1.206 because it allows deadlocks.David Gwynne
2017-02-08the splvm() in pool_gc_pages is unecessary now.David Gwynne
2017-01-24Force a context switch for every pool_get(9) with the PR_WAITOK flagMartin Pieuchot
2016-11-21let pool page allocators advertise what sizes they can provide.David Gwynne
2016-11-07rename some types and functions to make the code easier to read.David Gwynne
2016-11-02poison the TAILQ_ENTRY in items in the per cpu pool cache.David Gwynne
2016-11-02add poisoning of items on the per cpu caches.David Gwynne
2016-11-02use a TAILQ to maintain the list of item lists used by the percpu code.David Gwynne
2016-11-02add per cpu caches for free pool items.David Gwynne
2016-09-15all pools have their ipl set via pool_setipl, so fold it into pool_init.David Gwynne
2016-09-15move pools to using the subr_tree version of rb treesDavid Gwynne
2016-09-05revert moving pools from tree.h to subr_tree.c rb trees.David Gwynne
2016-09-05move pool red-black trees from tree.h code to subr_tree.c codeDavid Gwynne
2016-01-15add a "show socket" command to ddbDavid Gwynne
2015-09-11Now that interrupt-safe uvm maps are porperly locked, the interrupt-safeMark Kettenis
2015-09-08Give the pool page allocator backends more sensible names. We now have:Mark Kettenis
2015-09-08Now that msleep(9) no longer requires the kernel lock (as long as PCATCHMark Kettenis
2015-09-06We no longer need to grab the kernel lock for allocating and freeing pagesMark Kettenis
2015-09-01Push down the KERNEL_LOCK/KERNEL_UNLOCK calls into the back-end allocatorMark Kettenis
2015-08-21re-enable *8.David Gwynne
2015-07-23remove the POOL_NEEDS_CATCHUP macro, it isnt used.David Gwynne
2015-07-20Move `ticks' declaration to sys/kernel.h.Masao Uebayashi
2015-04-21disable *8 again for now. incoherent archs arent having much fun with it.David Gwynne
2015-04-07nothing uses pool_sleep, so get rid of itDavid Gwynne
2015-04-07introduce a garbage collector for (very) idle pool pages.David Gwynne
2015-03-20reintroduce r1.173:David Gwynne
2015-03-14Remove some includes include-what-you-use claims don'tJonathan Gray
2015-02-10reintroduce page item cache colouring.David Gwynne
2015-01-22pool_chk_page iterates over a pages free item lists and checks thatDavid Gwynne
2015-01-19white space fixes. no binary change.David Gwynne
2015-01-05splassert on some archs (or just sparc64) check that you're not inDavid Gwynne
2015-01-04back out r1.173, aka the "* 8" diff. it tickles a problem on someDavid Gwynne
2015-01-04avoid the use of an uninitialised variable in one of the codepaths inJonathan Gray
2014-12-22remove some unused fields from pool. ok dlgTed Unangst
2014-12-22if we're able to use large page allocators, try and place at leastDavid Gwynne