R&C menu Wait: Unreachable code fix (on Windows)#4045
Conversation
…oved timeout logic and error checks
|
I mean, removing the unreachable does fix the issue, but the problem we'd like to figure out is why we have spurious wakeups in the first place |
|
Agree that removing UNREACHABLE is only a correctness fix for condvar semantics. I also addressed a concrete wake source: signal-to-thread without queue membership validation combined with an unchecked SleepqRemove. That combination could wake a thread without a matching dequeue. With the membership check and proper handling of removed == 0, I prevent that path while still allowing legitimate spurious wakeups. |
| break; | ||
| } | ||
| UNREACHABLE(); | ||
| // Spurious/stray wakeup: keep waiting until dequeued, canceled, or timed out. |
There was a problem hiding this comment.
I remember talking with @raphaelthegreat before that this unreachable should be here, we really should not be hitting this case. But I didn't figure out why it was being hit.
There was a problem hiding this comment.
I have tried to figure this out as well a few times but couldn't. Honestly might be best to comment it out at this point, its doing more harm than good and pro badly is a spurious wakeup
|
@StevenMiller123, @georgemoralis. With GPU page protection disabled and several code modifications applied, I can reach in-game in Ratchet & Clank on Windows. |
|
I mean, Ratchet & Clank is ingame on main too, it just takes luck. |
|
I cant reach ingame on windows with my hw. |
|
With GPU page protection disabled, it loads stably, but the FPS is low. |
|
clang issue :D |
This file was accidentally omitted from the previous commit.
|
@bigol83, can you test again? |
it does crash when trying to reach ingame with 1.09 |
|
can you share log? |
Hmm, Github copy fails, my local build working, thats strange, can you try attached file? |
but it has more vertex explosions |
I am working this direction. |
|
@bigol83, You can enable readbacks, linear image readbacks and direct memory access in per game config, then shadows and reflections should appear. |
|
@bigol83, if you want to see correct geometry, just set the launcher to Windows 7 compatibility mode and see the magic. |
❤️
|
|
needs rebase and i am not sure about this , need a new review circle |
I will do it tomorrow! |








kernel: Enhance condition variable wait and signal handling with improved timeout logic and error checks