Fixes a bug where DR delivers a signal while an app is inside its signal handler for that same signal and has blocked such self-nesting. The fix is to undo some of the sigsuspend-handling changes that cause this regression by moving the sigsuspend state restore to actual delivery rather than at pending signal time.
Improves the linux.signest test to reproduce the original bug and verify the fix. Also adds a test case to ensure that signals are nested when not blocked.
Fixes #4998 (closed)