History log of /openbsd-src/sys/kern/subr_hibernate.c (Results 51 – 75 of 152)
Revision Date Author Comments
# 24aea4fd 09-Oct-2014 mlarkin <mlarkin@openbsd.org>

remove an unused function and some unused variables in hibernate


# b0c80555 26-Sep-2014 kettenis <kettenis@openbsd.org>

Rework piglet and pig allocation. Currently the piglet gets allocated
deep down in the suspend path, where it is really hard to recover from
allocation failure. So allocate the piglet early on in t

Rework piglet and pig allocation. Currently the piglet gets allocated
deep down in the suspend path, where it is really hard to recover from
allocation failure. So allocate the piglet early on in the suspend path.
Also change the piglet and piglet allocation functions to use km_alloc(9)
instead of doing pmemrange magic. This removes a bunch of code which, in the
case of the piglet allocation, is broken since it results in a NULL pointer
dereference. Also switch the piglet allocation to not wait. If we can't
allocate 16MB of phys contig memory on a halfway modern machine we're almost
certainly under a lot of memory pressure and we're better off not trying to
hibernate anyway.

ok mlarkin@

show more ...


# 95cb2185 19-Sep-2014 kettenis <kettenis@openbsd.org>

Use config_suspend_all(9).


# 965a4b2a 21-Jul-2014 mlarkin <mlarkin@openbsd.org>

fix some wrong comments and a bit of KNF


# 7b90f98f 20-Jul-2014 mlarkin <mlarkin@openbsd.org>

Support hibernating to softraid crypto volumes.

much help and ok from deraadt@


# 7882bc75 16-Jul-2014 mlarkin <mlarkin@openbsd.org>

Reenable hibernate RLE support and flush+zero all memory after unpack.


# 7bbeffb6 09-Jul-2014 mlarkin <mlarkin@openbsd.org>

Minor cleanups in wording in some comments and printfs, and added some
dprintfs to help debugging in the field (disabled by default)


# 31a59060 09-Jul-2014 mlarkin <mlarkin@openbsd.org>

Don't use the suspending kernel's VA mapping for the piglet. It's far
easier and much less error-prone to just identity map it in the resuming
kernel as we have more control over the VA space layout

Don't use the suspending kernel's VA mapping for the piglet. It's far
easier and much less error-prone to just identity map it in the resuming
kernel as we have more control over the VA space layout there (otherwise
we are at the mercy of the suspending kernel's placement of the piglet VA).

This diff also increases the size of the piglet to 4 chunks, to avoid an
overwrite issue seen in m2k14 where the start of the kernel text was
overwritten with a bounced chunk before unpack.

show more ...


# 08170551 09-Jul-2014 mlarkin <mlarkin@openbsd.org>

Cleanup the chunk placement routine by removing the conflict resolver.
Chunks are now sorted by ascending PA and all chunks are bounced before
unpack. This fixes an issue where the trampoline chunks

Cleanup the chunk placement routine by removing the conflict resolver.
Chunks are now sorted by ascending PA and all chunks are bounced before
unpack. This fixes an issue where the trampoline chunks were being placed
at the end of the unpack ordering, causing overwrite during unpack.

show more ...


# bd831450 09-Jul-2014 mlarkin <mlarkin@openbsd.org>

Use suspending kernel's stack smash guard to avoid panicing during unpack.

ok deraadt@


# 9368744b 31-May-2014 mlarkin <mlarkin@openbsd.org>

Fix a format specifier in a debug printf.

Noticed by Josh Grosse.


# 7d396bdb 29-May-2014 mlarkin <mlarkin@openbsd.org>

Read MAXPHYS bytes at a time in the hibernate image read, instead of
PAGE_SIZE bytes. Completes the MAXPHYS optimizations in the read path.

with input from guenther@ who suggested a version that was

Read MAXPHYS bytes at a time in the hibernate image read, instead of
PAGE_SIZE bytes. Completes the MAXPHYS optimizations in the read path.

with input from guenther@ who suggested a version that was a little easier
to understand. Tested on i386 and amd64.

show more ...


# 527cac00 21-May-2014 mlarkin <mlarkin@openbsd.org>

Change use of Z_PARTIAL_FLUSH to Z_SYNC_FLUSH in the hibernate code as per
a warning/comment in zlib.h that Z_PARTIAL_FLUSH "will be removed, use
Z_SYNC_FLUSH instead".


# 9948b232 26-Apr-2014 mlarkin <mlarkin@openbsd.org>

Perform MAXPHYS-sized reads for the chunktable instead of PAGE_SIZE-sized
reads.

Also fix a VA leak in the chunktable read error path.


# 57a2f0a6 20-Apr-2014 mlarkin <mlarkin@openbsd.org>

More dead stores removal in subr_hibernate.c


# 3b069d6b 19-Apr-2014 mlarkin <mlarkin@openbsd.org>

Dead stores in subr_hibernate.c


# 1a0bb2c4 21-Mar-2014 miod <miod@openbsd.org>

Allow for two more pmap-specific bits in vm_page pg_flags. Define
PG_PMAPMASK as all the possible pmap-specific bits (similar to the other
PG_fooMASK) to make sure MI code does not need to be updated

Allow for two more pmap-specific bits in vm_page pg_flags. Define
PG_PMAPMASK as all the possible pmap-specific bits (similar to the other
PG_fooMASK) to make sure MI code does not need to be updated, the next time
more bits are allocated to greedy pmaps.

No functional change, soon to be used by the (greedy) mips64 pmap.

show more ...


# c3f3b0fe 13-Mar-2014 dlg <dlg@openbsd.org>

get rid of the assumption that the head of the alldevs list is the
"mainbus" device. this breaks when mpath is enabled because it
attaches before mainbus and therefore takes the head position.

have

get rid of the assumption that the head of the alldevs list is the
"mainbus" device. this breaks when mpath is enabled because it
attaches before mainbus and therefore takes the head position.

have autoconf provide device_mainbus() which looks up mainbus_cd,
and use that instead.

discussed with deraadt who just wants mpath stuff to move forward
despite there being many ways to shine this particular turd.

show more ...


# dc6189dd 01-Feb-2014 mlarkin <mlarkin@openbsd.org>

Remove some of the excessive cache and TLB flushing going on during
hibernate unpack - these were added a while ago when we were fighting
different issues that have now been solved.

Tested by myself

Remove some of the excessive cache and TLB flushing going on during
hibernate unpack - these were added a while ago when we were fighting
different issues that have now been solved.

Tested by myself and dcoppa on a variety of machines

show more ...


# 91ba896d 21-Jan-2014 tedu <tedu@openbsd.org>

bzero -> memset


# 348d69c2 14-Jan-2014 mlarkin <mlarkin@openbsd.org>

Typo in a printf, should be 'bytes' not 'blocks'


# 27f37992 21-Nov-2013 dlg <dlg@openbsd.org>

remove the #define b_cylinder b_resid from bufs. i hated the
overloading of that thing.

the only hardware that seems to care about cylinders in our tree
are floppy drives, and the drivers for those

remove the #define b_cylinder b_resid from bufs. i hated the
overloading of that thing.

the only hardware that seems to care about cylinders in our tree
are floppy drives, and the drivers for those calculate their own
cylinders from logical block addresses and ignore whatever the rest
of the kernel thought b_cylinders should be.

most of this diff is moving the floppy drivers to using b_resid as
a resid and using that as part of the calculation for real cylinder
values.

the rest of the diff is getting rid of the useless assignments to
b_cylinder that dont get used by anything (now that disksort is
gone).

ok miod@

show more ...


# c085ccbf 09-Nov-2013 mlarkin <mlarkin@openbsd.org>

Remove hibernate_get_next_rle function (unused, and we need to redo it
anyway as we move toward a streamed implmentation)


# 225caf62 09-Nov-2013 deraadt <deraadt@openbsd.org>

unbias the chunks and chunktable writing and reading. as a result, it
is now possible to move the chunktable right after the chunks, not at
the end of the swap.
ok mlarkin


# 71e939c7 06-Nov-2013 deraadt <deraadt@openbsd.org>

simplify a crazy expression


1234567