RPCS3 / rpcs3

PS3 emulator/debugger
https://rpcs3.net/
GNU General Public License v2.0
15.12k stars 1.89k forks source link

FIFA 15: Vulkan deadlock #8088

Closed Anuskuss closed 3 years ago

Anuskuss commented 4 years ago

I have an Intel Iris Plus 640 iGPU and am using driver 26.20.100.6861. Starting FIFA 15 with Vulkan freezes my PC for a couple of seconds, OpenGL is fine. After I regain control, the render window stopped responding and stopping the emulator gives me the deadlock notice.

·E {RSX [0x00a92d8]} RSX: ERROR: [Validation] Code 0 :  [ VUID-vkResetFences-pFences-01123 ] Object: 0xf00fbe00000000db (Type = 7) | VkFence 0xf00fbe00000000db[] is in use. The Vulkan spec states: Each element of pFences must not be currently associated with any queue command that has not yet completed execution on that queue (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-vkResetFences-pFences-01123)
·E {RSX [0x00a92d8]} RSX: ERROR: [Validation] Code 0 :  [ VUID-vkResetDescriptorPool-descriptorPool-00313 ] Object: 0x1a4b4e000000012c (Type = 22) | It is invalid to call vkResetDescriptorPool() with descriptor sets in use by a command buffer. The Vulkan spec states: All uses of descriptorPool (via any allocated descriptor sets) must have completed execution (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-vkResetDescriptorPool-descriptorPool-00313)
I don't know if this is a driver issue or some feature RPCS3 needs but bisecting the drivers and comparing the output of vulkancapsviewer gives me this: 26.20.100.7463 26.20.100.7529
VK_KHR_shader_float_controls - v4
maxStorageBufferRange 134217728 4294967295
minStorageBufferOffsetAlignment 0x10 0x40
minTexelBufferOffsetAlignment 0x10 0x40
minUniformBufferOffsetAlignment 0x20 0x40
optimalBufferCopyOffsetAlignment 0x10 0x40
optimalBufferCopyRowPitchAlignment 0x10 0x40

Please let me know if this is worth investigating or if I should just use a newer driver / OpenGL for that particular game. I would really like to stay on 26.20.100.6861 if possible.

P.S. it freezes right before the EA SPORTS - It's in the game video so it might be related to that.

connorwalks commented 4 years ago

Are you running the base version of the game or do you have updates installed?

kd-11 commented 4 years ago

The freezing is caused by that botched fence reset but that bug was fixed a while back afaik. Are you really using the latest builds? If so, just disable "RSX multithreading" and see if it fixes anything. The other descriptor reset errors are from the overlay system, I have a fix for that but it is not pushed up yet.

Anuskuss commented 4 years ago

@kd-11 Yeah, I was using the latest build (which was 0.0.9-10256 at the time) and RSX MT was already off. There is no setting I can change to get past the intro (except OpenGL ofc).

digitaldude555 commented 3 years ago

@Anuskuss Is it fixed now?

kd-11 commented 3 years ago

This should be closed. Swapchain messages are caused by resizing the game window while the game is running and are not really an issue. I'll lower message severity later. Ofc ogl doesn't work on intel due to their meme windows driver.

Anuskuss commented 3 years ago

Okay, so I've decided to investigate this properly and came to the conclusion that the logs provided in the previous post were indeed unrelated. The game didn't work because it was on Update v1.05 but after reverting to the base version it starts again (on the latest driver). Besides that everything is behaving the same as in the OP, so I still believe that this issue is useless.

Honestly though I don't think this issue is useful because 1. at this point my driver is almost two years old (I have my reasons) and 2. according to my OP it works on newer drivers (I didn't bother checking but it should work on atleast 26.20.100.7529). I'll wait for what kd has to say so I'll leave this open just in case but the team is free to close this.

P.S. OpenGL is still broken on the latest driver which is kinda sad. I don't know what mov is but it sounds like basic functionality so once again I'm disappointed in Intel.