summaryrefslogtreecommitdiffstats
path: root/sys/kern/subr_hibernate.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Perform most of the remaining refactoring of hibernate code intomlarkin2011-09-211-81/+897
| | | | | | | | | | MI/MD parts. This also introduces a chunk placement routine that was originally developed at c2k11 with help from drahn and ariane. There are still a few more things to do for hibernate, but those can be worked on in-tree. This code is disabled by default, and not yet called. ok deraadt@ (and deraadt@ said kettenis@ also ok'ed it :) )
* Allocations fit if [the end of free space] >= [the end of allocated space].ariane2011-07-181-2/+2
| | | | Change > in comparison to >=.
* Fix uvm_pmr_alloc_piglet.ariane2011-07-181-5/+1
| | | | | A wrong check could cause the piglet allocator to attempt to extract memory from a range in which the alignment caused it not to fit.
* Add hibernate_read_block and fix a couple of typos in the previous commit.mlarkin2011-07-111-1/+67
|
* Call (temporarily, until we have RLE page encoding) uvm_pmr_zero_everythingmlarkin2011-07-091-1/+32
| | | | | | on suspend to ensure we get good zlib compression. Add MI signature block (hibernate_info) comparison routine
* Extract hibernate_write_signature and hibernate_clear_signature to the MImlarkin2011-07-091-1/+123
| | | | hibernate code, and add chunk range overlap checking.
* Extract MI pmap function hibernate_enter_resume_mapping, refactor old i386mlarkin2011-07-091-7/+83
| | | | | | | | resume pmap code to match. Add hibernate deflater and inflater and cache flush routines. Code is not presently called or automatically built.
* Add zlib reset, alloc, and free functions for hibernate image compressionmlarkin2011-07-091-1/+28
|
* Separate some MD and MI bits and a bit of refactoring to make subsequentmlarkin2011-07-091-2/+74
| | | | | | | | commits easier. Work in progress, hibernate will still not work for you. ok deraadt@
* no reason to zero pages we are about to mark dirtyariane2011-07-081-5/+2
|
* Ensure all pages in pmemrange can be marked as dirty.ariane2011-07-081-1/+42
| | | | | | | It'd be a very bad idea to hand out dirty pages as zeroed, just because we came back from hibernate. No callers at the moment, will be called on hibernate resume path.
* Put in RLE logic for hibernate compressor.ariane2011-07-081-1/+34
| | | | | | | These have the potential to compress 1MB of physmem into 1 byte. This works by noting the page is not in use and therefor skipping it. Needed by mlarkin@ for hibernate. No callers yet.
* Change pig allocator to a highest-address selection.ariane2011-07-081-27/+172
| | | | | | Add piglet allocator, which does a lowest-address selection. No callers yet, needed by mlarkin@ for hibernate voodoo.
* Move uvm_pmr_alloc_pig to kern/subr_hibernate.cariane2011-07-081-1/+45
| | | | No callers, no functional change.
* Move uvm_pmr_zero_everything() to subr_hibernate.ariane2011-07-081-1/+41
| | | | | | | This function will probably die before ever being called from the in-tree code, since hibernate will move to RLE encoding. No functional change, function had no callers.
* Move hiballoc to hibernate.h, subr_hibernate.cariane2011-07-081-0/+224
Next few commits will move other hibernate-specific functionality, like the pig-allocator, to subr_hibernate. No functional change, no callers either.