[dv/dpi] tcp_server_create changes #25646
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I'm proposing to make it a fatal error to fail to open the listening socket rather than simply continuing the simulation after printing an error. My rationale is that it would be better to intentionally open the socket (and optionally provide a mechanism to make the port unique, as was recently done for
jtagdpi
), instead of the current "best effort" approach.The changes here: (1) make the socket setup synchronous to the
create()
call while leaving the processing on a dedicated pthread and (2) assert if the setup fails.I expect there could be fallout from this (in CI sim jobs, for example) since
dmidpi
currently starts the server unconditionally and uses a static port number (set via SV parameter). So, I expect there might need to be additional changes after discussion whether folks consider whether this policy change is sensible or not.