Conversation
|
Heads up! This PR modifies the following files:
|
|
This is still WIP so just removed assignee and awaiting review label 🙏 |
|
☔ The latest upstream changes (presumably #27084) made this pull request unmergeable. Please resolve the merge conflicts. |
|
@jdm @kunalmohan Good news here! About WebGPUIn current About Dynamic ImportI'm not sure if it's a good idea but I wonder it should be safer and easier to generate the Then, with simply sending the IPC router to resource threads by But, there are still some unexpected FAIL and TIMEOUT! I'm going to observe the root cause for remaining FAIL and TIMEOUT! Hope current branch can work fine for the webgpu project! 🙏 |
|
Awesome! Thank you @CYBAI!!
I wonder why that happens 🤔 . I'll try to investigate this. |
It looks like the module is loaded but if you think it might be something wrong in dynamic module, feel free to let me know! 😄 |
|
cc @kvark |
|
☔ The latest upstream changes (presumably #27088) made this pull request unmergeable. Please resolve the merge conflicts. |
|
@kunalmohan if you get stuck investigating this, please consider exposing a way for Servo to record the wgpu API trace. We'd be able to look at it outside of Servo and see if it captures the problem. |
|
@bors-servo try=wpt
|
Introduce dynamic module <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes fix #___ (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
...scripting-1/the-script-element/module/dynamic-import/no-active-script-manual-module.html.ini
Outdated
Show resolved
Hide resolved
|
💔 Test failed - status-taskcluster |
|
Wow, many unexpected CRASH and ERROR; looks like I do break something 😂 Let me investigate it! |
|
Huh, #27311 hit us again. I'm getting suspicious, so I'll try building this branch on my Windows machine and seeing if I can reproduce it. |
|
I can reproduce the crash consistently. |
|
Somehow, we're calling GetScriptPrivate on a null JSScript, despite checking for a null pointer first. That's... confusing. |
|
Hmm, is it possible that it means we might have a bug in GetScriptPrivate on Windows 🤔? |
|
Ugh, you're absolutely right. Great catch! |
|
More specifically, it's our old nemesis "can't return JSValue by value on Windows". We'll need to add a method to jsapi::glue that takes a |
Oh, TIL 🤯 Thanks!
Thanks! Let me try to send a PR! |
While working on servo/servo#27026, we've noticed calling `GetScriptPrivate` will hit a CRASH consistently in Windows. jdm noticed that this is caused by "can't return JSValue by value on Windows"; thus, we need to expose these 2 glue methods so that we can handle the `GetScriptPrivate` and `GetModulePrivate` correctly.
While working on servo/servo#27026, we've noticed calling `GetScriptPrivate` will hit a CRASH consistently in Windows. jdm noticed that this is caused by "can't return JSValue by value on Windows"; thus, we need to expose these 2 glue methods so that we can handle the `GetScriptPrivate` and `GetModulePrivate` correctly.
While working on servo/servo#27026, we've noticed calling `GetScriptPrivate` will hit a CRASH consistently in Windows. jdm noticed that this is caused by "can't return JSValue by value on Windows"; thus, we need to expose these 2 glue methods so that we can handle the `GetScriptPrivate` and `GetModulePrivate` correctly.
Add glue methods to get JSValue of a private reference While working on servo/servo#27026, we've noticed calling `GetScriptPrivate` will hit a CRASH consistently in Windows. jdm noticed that this is caused by "can't return JSValue by value on Windows"; thus, we need to expose these 2 glue methods so that we can handle the `GetScriptPrivate` and `GetModulePrivate` correctly. --- This will help servo/servo#27026. We might want to handle the `ModulePrivate` much more correctly in the future so it might be worth adding it here as well?
Because MSVC uses a different calling conventions for functions that return non-POD values, we need to use the new exposed wrapper function so that `GetScriptPrivate` can be handled correctly on Windows.
|
@bors-servo try
|
Introduce dynamic module --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #25439 - [x] There are tests for these changes
|
☀️ Test successful - status-taskcluster |
|
@bors-servo r+ |
|
📌 Commit 419cd53 has been approved by |
|
☀️ Test successful - status-taskcluster |

./mach build -ddoes not report any errors./mach test-tidydoes not report any errors