I had already found the reason for this behavior! The only change in the "drivers/base/power/" Subdirectory is inside main.c line 192.
There is a "while loop" that loops over a list (dpm_list). The (principal) task of this loop is to call "device_prepare" on every list-element. Every element that is processed (without error) is then removed from the list and placed into a "prepared" list (I leave out the special case of EAGAIN here, because its not necessary to understood the bug). In the prev. version this loop is terminated when the list is empty OR when there is an error. In the newer revision the second condition was removed. Removing the second condition will result in an endless loop whenever an error occurs! Right now I am not sure what will be the correct way to handle an error (on device_prepare)... I guess that the correct way should be to "skip/mark" this element, continue to process the rest of the elements and do special handling later on the marked elements. But, because the prev. revision simply ignores the failed element AND all remaining (I believe that the second part is definitely wrong) , this should work here too. I am currently trying to generate a kernel with this line reverted to prev. version and check if this works.. I will report (again) if my checks are done -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1966125 Title: Suspend (to ram) fails after upgrade from 5.13.0-35-generic to 5.13.0-37-generic To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux-signed-hwe-5.13/+bug/1966125/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs