-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Updated sys_net to use WSAPoll on win32 to fix connection issues #7064
Conversation
in Metal Gear Online. Also aligns with implementations on non win32 platforms
|
WSAPoll is known for its flaw of not reporting failed connection, as I recall. I'd like to see more information regarding the bug. |
|
Ok fair enough I didn't know WSAPoll had that problem. The bug is in the select function, it appears to be saying the data needs to be read even after it was already read. Because of this it looks like when recv is called after that bad return there is an error. What this looks like in the game is that sometimes the call makes it through and you get a successful response whilst sometimes you will get a connection error from the server (more often an error than success). |
|
WRC 5 is broken after this PR. Ingame to Nothing. |
|
it looks like the game tries to connect to localhost and fails, then we're stuck in a waiting state, wsapoll is setting the revent to 0 in this instance rather than the expected pollout which is ultimately the problem. Will see what can be done about this. |
|
Uncharted [BCUS98103] hangs while loading save using "disconnected", "connecting" and "obtaining IP" (second later than previous 2), works as intented only with "IP obtained", before worked with any of them. |
|
It looks to be the issue with wsapoll that was mentioned. @Nekotekina is it possible to revert this commit as it's regressed some games. I will look into the original bnet_select issue in isolation. Sorry for the trouble. |
|
From further testing, looks like this PR regressed performance in uncharted in the same time. from 24 fps to 17-18. Changing preferred spu threads from auto to 2/3 seems to somehow help to avoid this network issue, but performance is still same bad. |
|
It's always possible to revert, as last resort. I'll think what can be done. |
that are shown in Metal Gear Online. Also aligns with implementations on non win32 platforms.