+ vm_decompressor_lock();
+ need_to_unlock_decompressor = TRUE;
+
+ hibernate_flush_memory();
+ }
+
+ // no failures hereafter
+
+ hibernate_processor_setup(header);
+
+ HIBLOG("hibernate_alloc_pages act %d, inact %d, anon %d, throt %d, spec %d, wire %d, wireinit %d\n",
+ vm_page_active_count, vm_page_inactive_count,
+ vm_page_anonymous_count, vm_page_throttled_count, vm_page_speculative_count,
+ vm_page_wire_count, vm_page_wire_count_initial);
+
+ if (retval != KERN_SUCCESS && need_to_unlock_decompressor == TRUE) {
+ need_to_unlock_decompressor = FALSE;
+ vm_decompressor_unlock();
+ }
+ return (retval);