IMHO it is better to disable hibernation in systemd if we know it cannot work rather than disable s2h permanently in gnome. In particular, it is fairly easy to tweak systemd to understand the 'noresume' parameter and notice the lack of 'resume=' (Long term we want to make hibernation work without resume=, but until then.) I'll try to get this ready before F29 final.
That should solve the case of "configuration" issues, and will leave us only with those cases where the kernel drivers have issues.
Well, it was suggested upthread that even if resume= is set, swap could well be too small. Per its comments, for instance, anaconda certainly does not ensure that swap size is larger than RAM size:
# the succeeding if-statement implements the following formula for # suggested swap size. # # swap(mem) = 2 * mem, if mem < 2 GiB # = mem, if 2 GiB <= mem < 8 GiB # = mem / 2, if 8 GIB <= mem < 64 GiB # = 4 GiB, if mem >= 64 GiB
it's going to be exactly equal to memory size or smaller than memory size on almost all modern systems, according to that at least.
I also wonder how it detects if zram is being used for swap.