mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 14:41:39 +00:00
ef4aede3f1
We want to avoid attempting to free too much memory too hard during hibernation, so estimate the minimum size of the image to use as the lower limit for preallocating memory. The approach here is based on the (experimental) observation that we can't free more page frames than the sum of: * global_page_state(NR_SLAB_RECLAIMABLE) * global_page_state(NR_ACTIVE_ANON) * global_page_state(NR_INACTIVE_ANON) * global_page_state(NR_ACTIVE_FILE) * global_page_state(NR_INACTIVE_FILE) minus * global_page_state(NR_FILE_MAPPED) Namely, if this number is subtracted from the number of saveable pages in the system, we get a good estimate of the minimum reasonable size of a hibernation image. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Wu Fengguang <fengguang.wu@intel.com> |
||
---|---|---|
.. | ||
console.c | ||
hibernate_nvs.c | ||
hibernate.c | ||
Kconfig | ||
main.c | ||
Makefile | ||
power.h | ||
poweroff.c | ||
process.c | ||
snapshot.c | ||
suspend_test.c | ||
suspend.c | ||
swap.c | ||
swsusp.c | ||
user.c |