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

sys_net: Implement sys_net_abort #12265

Merged
merged 1 commit into from Jul 17, 2022
Merged

Conversation

elad335
Copy link
Contributor

@elad335 elad335 commented Jun 21, 2022

Attempts to address #12236.
Implement type 0 and 4 commands.


if (sock->queue.empty())
{
if (flags & 1)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SYS_NET_ABORT_STRICT_CHECK
Need definition in sys_net.h

@@ -1595,12 +1610,141 @@ error_code _sys_net_write_dump(ppu_thread& ppu, s32 id, vm::cptr<void> buf, s32
return CELL_OK;
}

error_code lv2_socket::handle_abort(s32 type, u64 arg, s32 flags)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From a pure design pov I feel the case _socket should be what is in there, the rest should be in the sys_net_abort function. lv2_socket is meant to be an interface for functions specifically acting on a socket.

}

// Check if the PPU reappears in other sockets in case it waits on multiple sockets (so it won't be woken up)
idm::select<lv2_socket>([&](u32, lv2_socket& _sock)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this from hardware tests?
I would expect poll/select to be woken up by an abort on one of their sockets(I might be wrong though).

@elad335 elad335 force-pushed the sys_net_abort branch 4 times, most recently from 24a553e to b3de542 Compare July 17, 2022 10:50
@Nekotekina Nekotekina merged commit c0369b2 into RPCS3:master Jul 17, 2022
@elad335 elad335 deleted the sys_net_abort branch July 17, 2022 12:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants