Windows 7 (64-bit) will not hibernate -- suspend is ok

Nazo

2[H]4U
Joined
Apr 2, 2002
Messages
3,672
I've been trying to keep my computer fairly power efficient, which is part of why I now do so much on a "minimal" PC (~50 watts for basic use of things like browsers versus at least twice that for most computers, around 65 or so for basic gaming versus as much as three to four times that for many.) However, I can't get the "hybrid sleep" or the hibernate options in Windows 7 to work. Hybrid sleep being apparently basically a suspend mode + hibernate at the same time (so you get the instant on benefit of suspend with the safety net of hibernate if there is a power loss or anything.) Both are options I'd really like to use, but right now it won't do either. Basically the screen will fade out (one of MS's silly effects, but whatever) and the video to the monitor will stop for a moment, then the video just comes right back on and the computer hasn't even attempted a hibernation. There are no errors or anything. In fact, until I disabled the "hybrid sleep" option, I couldn't even suspend, but once I turned that off the suspend mode started working again.

I've dug through all the power settings and device manager settings regarding power usage. I've disabled all the wake from USB options on every device including my mouse (I don't really want it powering the USB devices anyway since, again, I'm trying to keep power usage to a minimum and it's not exactly all that hard to reach ever so slightly and press that button, lol.) The networking options are set to not wake it and to power down any wireless devices if I ever get any (wired only right now, but perhaps it also makes a difference with wired connections?) I also disabled the stuff like keeping the system on for media shares or whatever (I don't have an Xbox 360, don't plan to get one, and if I did, I wouldn't use that anyway.) I've followed some guides to try to identify what is set to keep a system awake and so far it has just come up empty every time. Given that the suspend mode works though, I'm inclined to think that this is exactly what I should see (after all, anything that would interrupt hibernate should interrupt suspend too!) I don't see anything in the system logs (eg event viewer) that seems even vaguely related either.

Just in case it's needed or relevant, my hardware:
CPU: AMD A4 5300 APU
Motherboard: MSI FM2-A75MA-E37 (AMD A75 chipset)
Videocard: Radeon HD5570 (yeah, I realize the APU does video, but it's not powerful enough to handle even some of my simpler games, so for now I'm going with this until I can upgrade it)
Soundcard: ASUS Xonar DG

Oh, and I have service pack 1 installed. I believe it isn't related to the soundcard or the videocard because I was actually using both before upgrading to this APU (the old CPU being single core and, ironically enough, power usage is actually better with this dual core APU, so it's a definite upgrade in every way pretty much -- plus in theory heterogeneous computing could benefit from the GPU core in it if it really hits like it's supposed to.) Honestly though, I don't really think it's hardware related at all. Especially since, as mentioned before, the suspend mode works (which really makes me think it has to be software-side...)

Does anyone have a clue what I could be missing on this?



EDIT: Ok, if anyone ever searches this and has the same problem I've finally figured it out all this much time later. It seems that newer Windows versions refuse to hibernate if their own personal partition is not the one set as active because... ... because Microsoft thinking. Anyway, there are ways around this, but it seems like the easiest is to use a modified MBR (altmbr.bin) from the Syslinux project which can ignore the active flag and manually boot a specific partition number.
http://www.syslinux.org/wiki/index.php/Mbr

It's stupid that this is necessary, but Microsoft does love to do their arbitrary stuff. No excuse for not even giving the user an error message or anything at all to diagnose the issue however.
 
Last edited:
Check windows task scheduler?

or i think you've already done it but:
BIOS ACPI settings?
 
Check windows task scheduler?

or i think you've already done it but:
BIOS ACPI settings?
+1 to above.

Have you verified that the boot flag is on the correct drive partition? This has to do with the drive priority in BIOS. Check out this MS help thread: http://answers.microsoft.com/en-us/windows/forum/windows_7-performance/windows-7-will-not-hibernate-at-all/e51b4f18-79ee-4bf6-b8bd-26918e996a5f There are 2 pages, so check out both.
 
Check windows task scheduler?

or i think you've already done it but:
BIOS ACPI settings?
Of course I checked that first when the suspend wasn't working (before I realized that the "hybrid suspend" basically meant suspend + hibernate and that turning that off made suspend work.) Obviously though, hibernate isn't the same thing as suspend and anything that, in the BIOS, would prevent hibernate would prevent suspend ten times over first. Eg if suspend works, nothing of this nature could possibly stop hibernate...

Have you verified that the boot flag is on the correct drive partition? This has to do with the drive priority in BIOS. Check out this MS help thread: http://answers.microsoft.com/en-us/...e-at-all/e51b4f18-79ee-4bf6-b8bd-26918e996a5f There are 2 pages, so check out both.
What the heck?! Ok, I got really sick of dealing with their horrible bootloader and was trying to use XP on this computer for a while and ultimately the only compromise I could find that didn't make a royal mess of things and the best long term solution I could find was to use a USB flash drive dedicated to being a boot manager drive (and another partition on it is solely dedicated to ReadyBoost.) Now, my harddrive has the bootable flag set to the Windows 7 partition, but could it be so stupid that it won't let me hibernate because the boot flag is obviously not set to the (nonexistent) Windows 7 partition on the flash drive? If so, this is unacceptable. I can't fix it -- I need that boot manager so I can boot linux and etc since MS insisted on replacing their somewhat tolerable boot manager from previous versions of Windows with the worst boot manager I have ever seen -- but at the same time this is not a valid or acceptable reason to be unable to hibernate... Is there any way to trick it into just hibernating to the partition it is running from as in every other OS ever including previous versions of Windows?
 
EXT4 partition with extlinux installed on it for the boot manager (it just chainloads the Windows 7 partition to boot 7.) A NTFS partition filling the rest of the drive is dedicated to ReadyBoost. (The boot order in the BIOS is just set to prioritize that particular USB drive -- which it sort of treats like an internal harddrive anyway.)

I'd rather have no hibernate or hybrid suspend than to change that setup. The 7 bootloader is a royal pain in the rear to do anything other than boot 7 and nothing else and the ReadyBoost is also nice and convenient. Still, just because the BIOS sees it as the boot drive, it seems pretty odd if the problem here is really with 7 actually seeing a different partition as bootable (its own partition is on that drive.)
 
Back
Top