plan9fox/sys/src
cinap_lenrek 61a062ee9f kernel: improve page reclaimation strategy and locking
when reclaiming pages from an image, always reclaim all
the hash chains equally. that way, we avoid being biased
towards the chains at the start of the Image.pghash[] array.

images can be in two states: active or inactive. inactive
images are the ones which are not used by program while
active ones aare.

when reclaiming pages, we should try to reclaim pages
from inactive images first and only if that set becomes
exhausted attempt to release text pages and attempt to
reclaim pages from active images.

when we run out of Image structures, it makes only sense
to reclaim pages from inactive images, as reclaiming pages
from active ones will never free any Image structures.

change putimage() to require a image already locked and
make it unlock the image. this avoids many pointless
unlock()/lock() sequences as all callers of putimage()
already had the image locked.
2020-04-26 19:54:46 +02:00
..
9 kernel: improve page reclaimation strategy and locking 2020-04-26 19:54:46 +02:00
ape fix alignment in ape malloc 2020-03-09 08:02:22 -07:00
boot 9bootpxe: simplify 2020-04-08 23:48:09 +02:00
cmd copy all the tokens from the tokenrows with a paste. 2020-04-26 09:32:42 -07:00
games games/playlistfs: open /proc/n/ctl OWRITE, not ORDWR 2020-03-08 13:13:25 +01:00
lib9p lib9p: fix re-use of root Qid when using createfile(); remove unused dirqidgen 2020-03-29 17:39:30 +00:00
libaml
libauth
libauthsrv
libavl
libbin
libbio
libc
libcomplete
libcontrol
libdisk
libdraw
libdtracy
libfis
libflate
libframe
libgeometry
libhtml
libhttpd always zero initialize Tm structure for tm2sec() 2019-12-03 08:22:02 +01:00
libip
libjson
liblex
libmach
libmemdraw libmemdraw: remove inexistent build targets 2020-04-19 15:30:58 +02:00
libmemlayer
libmp
libndb
libplumb
libregexp
libsat
libscribble
libsec libsec: remove hash pickle functions, document ripemd160, cleanup sechash(2) manpage 2020-03-01 15:07:44 +01:00
libstdio
libString
libsunrpc
libthread
libttf
libventi
mkfile
mkfile.proto