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

rsx: Fix data written to RSX semaphores and the initial data of them #8235

Merged
merged 1 commit into from May 16, 2020

Conversation

elad335
Copy link
Contributor

@elad335 elad335 commented May 16, 2020

Turns out SEMAPHORE_RELEASE writes 16-byte of aligned data instead of 4-bytes, the rest of the bytes are filled with zeroes.
Similarly texture and backend labels write zeroes as well for the rest of the 12 bytes of data and not rsx timestamp as it used to thought of.
Also fix the initial data of the upper 8 bytes of semaphores, they are not initilaized to UINT64_MAX but special values as a "joke" of Sony. (if you look at the values you'll see...)

testcase : https://github.com/elad335/myps3tests/blob/master/rsx_tests/FIFO%20Semaphores%20data/expected.txt
The first buffer output is of the initial data of 6 semaphores, the second is of the first 3 semaphores used in the first output after SEMEPHORE_RELEASE, texture write label and backend write label.

@BellezaEmporium
Copy link

Really interesting on how Sony do Indeed acknowledge that their code will be engineered one day or in another.

Quick question, what are the expected changes for the games who suffer from bad Semaphore addressing (that also kicks the FPS down) ?

@elad335
Copy link
Contributor Author

elad335 commented May 16, 2020

I have no idea, it really comes to how they are handled by each game.

@BellezaEmporium
Copy link

I know some games that suffer from it, I'll conduct tests to see if this PR solves the issues

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants