Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LV2 Fixups #12482

Merged
merged 8 commits into from Aug 11, 2022
Merged

LV2 Fixups #12482

merged 8 commits into from Aug 11, 2022

Conversation

elad335
Copy link
Contributor

@elad335 elad335 commented Aug 8, 2022

  • Optimize lv2_obj::yield, fix a bug that existed before the pr and some which were introduced by it.
  • A hotfix in sys_lwmutex/mutex.
  • Fix a race in savestates with sys_lwcond.
  • Improve the accuracy of LV2 timers regardless of the setting used. (count time passed from the time of sleep, not of wait_timeout)
  • Fix a race condition which existed before the pr as well. For me it fixes a freeze in Demon Souls after a while but it improves overall PPU stability in nearly every game. description is in the commit: bf4791f Removed from this pr.

Fixes #12480
Fixes #12485
Fixes #12486
Fixes #12489

@Kravickas
Copy link
Contributor

Kravickas commented Aug 8, 2022

Gran Turismo 6 broken after #12378 and still broken with PR, I tried 2,4,6,8 PPU threads - no sound, pad doesnt work

·F 0:00:56.622620 {PPU[0x100001f] Thread (9ZWAM) [0x00c45708]} SIG: Thread terminated due to fatal error: Verification failed
(in file C:\Users\ContainerAdministrator\AppData\Local\Temp\cirrus-ci-build\rpcs3\Emu\Cell\lv2\sys_cond.cpp:455[:2], in function sys_cond_wait)

PR RPCS3.log
Master before #12378 RPCS3.log

@elad335
Copy link
Contributor Author

elad335 commented Aug 8, 2022

Test now.

@Kravickas
Copy link
Contributor

Kravickas commented Aug 8, 2022

e7e3094 GT6 back ingame 2/4/8 PPU

@coolllman
Copy link

Infamous 2, 2 ppu not working, 4 ppu working

@elad335 elad335 marked this pull request as draft August 8, 2022 14:26
@elad335
Copy link
Contributor Author

elad335 commented Aug 8, 2022

@coolllman Retest.

@coolllman
Copy link

coolllman commented Aug 8, 2022

No luck
RPCS3.log

Change to 4 ppu work, change back to 2 ppu and its work, close rpcs3 and again not work

@elad335
Copy link
Contributor Author

elad335 commented Aug 8, 2022

@coolllman The commit hash in the log is e7e3094, can you reupload log with the latest build? (fe302cb)

@coolllman
Copy link

coolllman commented Aug 8, 2022

Log from latest artifact
RPCS3.log

@coolllman
Copy link

All works with last changes, thank you.

@elad335 elad335 marked this pull request as ready for review August 8, 2022 17:30
@coolllman
Copy link

coolllman commented Aug 8, 2022

Motorstorm Apocalypse same freeze on boot
RPCS3.log

@elad335
Copy link
Contributor Author

elad335 commented Aug 8, 2022

L-O-G

@ERNSTEROCK
Copy link

im having the same issue with infamous 2 I cleared the cache and changed the ppu to 4 and the game was working for a bit then crashed and now it wont get past the loading screen please help.

@elad335 elad335 marked this pull request as draft August 8, 2022 21:46
@elad335 elad335 changed the title Fix sys_ppu_thread_yield Fixups and more optimization following #12378 Aug 9, 2022
@elad335 elad335 force-pushed the patch-80 branch 2 times, most recently from 5c8aa5c to 3701981 Compare August 9, 2022 05:31
@elad335 elad335 marked this pull request as ready for review August 9, 2022 05:31
@elad335
Copy link
Contributor Author

elad335 commented Aug 9, 2022

@coolllman Fixed.

@coolllman
Copy link

Yes, infamous 2 and motorstorm fixed

@coolllman
Copy link

RPCS3.log

@elad335
Copy link
Contributor Author

elad335 commented Aug 10, 2022

Well, works for me, maybe try leaving it running more than a minute when loading. I think that's it for this pr.
image

@coolllman
Copy link

coolllman commented Aug 10, 2022

Wait 5 minutes, no change with new pr, stuck on the warning screen, on 14014 and early pr all was good
RPCS3.log
You have digital edition, i have disc
After this bf4791f game freeze

@tech2c
Copy link

tech2c commented Aug 10, 2022

I just tried Diablo 3 again with latest PR. It crashed after 5 mins. This is back to normal behavior like master.

@elad335 elad335 marked this pull request as draft August 10, 2022 10:29
@elad335
Copy link
Contributor Author

elad335 commented Aug 10, 2022

@coolllman Retest when builds, upload log and log kernel explorer again.

@coolllman
Copy link

coolllman commented Aug 10, 2022

Sorry didn't test earlier pr, on last change motorstorm work, infamous 2 work

@elad335 elad335 marked this pull request as ready for review August 10, 2022 13:55
@Kravickas
Copy link
Contributor

Tiger 14 and GT6 seems ok

@elad335 elad335 marked this pull request as draft August 10, 2022 16:13
@elad335 elad335 force-pushed the patch-80 branch 2 times, most recently from f4a6818 to b0ce8ba Compare August 10, 2022 17:51
@elad335 elad335 marked this pull request as ready for review August 10, 2022 17:51
Fix and optimize sys_ppu_thread_yield

Fix LV2 syscalls with timeout bug. (use ppu_thread::cancel_sleep instead)

Move timeout notification out of mutex scope

Allow g_waiting timeouts to be awaked in scope
@elad335 elad335 changed the title Fixups + extra stability fixes + optimizations LV2 Stability improvements + fixups Aug 10, 2022
@elad335 elad335 changed the title LV2 Stability improvements + fixups LV2 Fixups Aug 11, 2022
@Nekotekina Nekotekina merged commit 133e9d4 into RPCS3:master Aug 11, 2022
@elad335 elad335 deleted the patch-80 branch September 19, 2022 05:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
9 participants