Strange, suspend/hibernate with uswsusp works like a charm for me. For the first time since kernel 2.6, too. The only bug which occasionally bites me is that after several suspend/resume cycles the screen randomly blanks for a while and then restores its previous state. Killing X doesn't help, it's the same in the console. Only a reboot fixes it. I suspect the Intel BT driver.