Uh oh!
There was an error while loading. Please reload this page.
[wasm] Fix NRE caused by WeakReference collected on JS interop boundary. - #54453
Conversation
ghost
commented
Jun 19, 2021
pavelsavara
commented
Jun 19, 2021
|
pavelsavara
commented
Jun 21, 2021
Open questions
Alternative implementation, pass false from |
kg
commented
Jun 21, 2021
I agree that the ownsHandle logic looks wrong, at least based on convention where an ownsHandle=true usually means 'this new object owns the underlying handle'. |
pavelsavara
commented
Jun 21, 2021
I just found this comment in the original PR |
kg
commented
Jun 21, 2021
That doesn't really clarify it at all :-) |
fcbb9ab to
dc2108fComparepavelsavara
commented
Jul 2, 2021
Note, we could not use the counter on the SafeHandle base class, because it could not be increased after the handle was released once. The same instance of JSObject could be passed from JS space multiple times, even on multiple calls. |
pavelsavara
commented
Jul 2, 2021
This doesn't address potential issue with naked pointers together with compacting GC. I have not seen that to manifest yet. |
dc2108f to
b799aaaCompare
lewing
left a comment
There was a problem hiding this comment.
So basically *InFlight is a strong ref held on top of the weak one across the transitions where we need to keep a strong ref?
pavelsavara
commented
Jul 12, 2021
Exactly. We keep the weak ref in place, because it's handle id has longer life-cycle. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
pavelsavara
commented
Jul 14, 2021
Failure of |
lewing
commented
Jul 14, 2021
ci failure looks like #45204 which has been disabled now |
lewing
commented
Jul 14, 2021
@pavelsavara can you resolve the conflict |
…t over the managed/JS boundary
ac1868e to
344041dComparepavelsavara
commented
Jul 14, 2021
Rebased, let's see how it works together with rooting. It should be just fine. |
lewing
commented
Jul 14, 2021
two hits on #55536 |
runtime (Libraries Test Run release mono Linux x64 Debug) is which sounds like #55642 |
lewing
commented
Jul 15, 2021
runtime (Mono llvmaot Pri0 Runtime Tests Run Linux arm64 release) is |
lewing
commented
Jul 15, 2021
/azp run |
|
You have several pipelines (over 10) configured to build pull requests in this repository. Specify which pipelines you would like to run by using /azp run [pipelines] command. You can specify multiple pipelines using a comma separated list. |
lewing
commented
Jul 15, 2021
it hasn't restarted in 40 minutes and non of the failures were relevant to a browser only change. |
Fixes#53872
Fixes#53957
Fixes#54655