-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Revert "[QUIC] Adopted msquic generated interop" #68940
Conversation
This reverts commit 992b395.
Tagging subscribers to this area: @dotnet/ncl Issue DetailsReverts #68288
|
Fixes #68932 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Why this did not show up on the original PR @jkotas ?
LGTM |
We do not run all CI legs on all PRs. We only run subset of legs that we expect to be impacted by the change, based on the set of files that the change is modifying. It works great as long as there no bugs. Something in the Quic change exposed existing crashing bug in Mono and all PRs where we decide to run Mono legs are failing now. |
} | ||
return _state.StopCompletion.Task; | ||
} | ||
|
||
#pragma warning disable CS3016 | ||
[UnmanagedCallersOnly(CallConvs = new Type[] { typeof(CallConvCdecl) })] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Assuming the assertion was:
condition `out_obj' not met
according to #68851 (comment), then it is tracked by #57361 and #52977. Perhaps the fix is to use non-array argument in the attribute:
- [UnmanagedCallersOnly(CallConvs = new Type[] { typeof(CallConvCdecl) })]
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
here and in MsQuicStream.cs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would also require reverting back to using delegates in number of places, partially defeating the point of this change.
I think we either need to get the Mono bug fixed soon; or disable Mono AOT for the Quic library.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed. cc @lambdageek (another example where #57361 and #52977 are blocking array argument usage)
63e6689
to
a523fcc
Compare
@ManickaP I am sorry to revert your PR to get CI back on track. Could you please work with the Mono team on finding the best way to address the failure? I see two options. I think we either need to get the Mono AOT bug fixed or we need to find a way to workaround it (e.g. by disabling Mono AOT for System.Net.Quic). |
Just to double check, this isn't something we'd need to fix on the MsQuic generated interop layer side, right? Its a mono specific JIT bug? |
Correct. |
This is a bummer 😢 I'll disable mono AOT tests for S.N.Quic and try to put up another PR. |
…" (dotnet#68940)" This reverts commit 4820674.
Reverts #68288