With opensuse 13.1, my computer could not hibernate. Could with 12.3.
After long debugging attempts, I saw a message about kernel bug in file
/usr/src/linux-3.11.6-4/drivers/dma/ioat/dma_v3.c, line 768.
The author and copyright holder of the file might be Intel. It is interesting that in the directory /usr/src/linux-3.11.6-4/drivers/dma/ioat/, a few previous versions of the file are present. But I don’t know how to activate them instead of v3.
Switching to kernel 3.12.5 did not help.
ioat stands for I/OAT = Intel’s input-output acceleration technology = some sort of hardware DMA engine which unloads the CPU. It is used in high-end server motherboards, according to Wikipedia. However, my motherboard, which is not high-end, had a setting about I/OAT. So I disabled it, and hibernation worked! (But haven’t tested thoroughly.)
There is no effect on computer’s working speed that I can see. An article states that actual investigations show a small effect only in high-speed network operations.