-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[wasm] [debugger] First version of multithreaded debugging (#74820)
* First version of multithreaded debugging. * Revert package-lock.json * New line at package-lock.json * Fix not used variable. * Fix debugger on firefox. * Rewrite code to avoid duplicated code. * Fix where mono_init_debugger_agent_common is called. * Remove whitespace. * Update src/mono/wasm/debugger/BrowserDebugProxy/MonoSDBHelper.cs Co-authored-by: Ankit Jain <radical@gmail.com> * Update src/mono/wasm/debugger/BrowserDebugProxy/DevToolsHelper.cs Co-authored-by: Ankit Jain <radical@gmail.com> * Update src/mono/wasm/debugger/BrowserDebugProxy/DevToolsHelper.cs Co-authored-by: Ankit Jain <radical@gmail.com> * [wasm] Debugger tests: support running with multithreaded runtime * Add runtime-wasm-dbgtests pipeline with debugger tests running on a multi-threaded runtime * Add multi-threaded debugger tests to runtime-wasm * fix yml * Always run the new tests when the pipeline is invoked manually * Pass through extra build args for wasm debugger tests * Addressing @radical comments. * Apply suggestions from code review Co-authored-by: Ankit Jain <radical@gmail.com> * addressing radical comments * Fixing tests failures and adding a schema to run a test that will only run in a multithreaded environment. * Adding support for run debugger-tests in a multithreaded runtime. * Fix running debugger tests for multithreaded runtime, passing sessionId where it's necessary. * Fix CI. * Addressing @radical comments Adding a test case. * Update src/mono/wasm/debugger/DebuggerTestSuite/DebuggerTestBase.cs Co-authored-by: Ankit Jain <radical@gmail.com> * Update src/mono/wasm/debugger/DebuggerTestSuite/MiscTests.cs Co-authored-by: Ankit Jain <radical@gmail.com> * Update src/mono/wasm/debugger/DebuggerTestSuite/InspectorClient.cs Co-authored-by: Ankit Jain <radical@gmail.com> * Dictionary with the scriptId also uses sessionId. * Addressing @radical review. * Apply suggestions from code review Co-authored-by: Ankit Jain <radical@gmail.com> * Avoiding getting this error: Cannot transition thread 0x2a15360 from STATE_BLOCKING with DO_BLOCKING. In the transport_send we don't save the thread context, we save it before the send function. * Addressing @radical comments. * Using more threads in unit test. * Apply suggestions from code review Co-authored-by: Ankit Jain <radical@gmail.com> * Addressing @radical comments, and trying to fix ci. * Removing unnecessary changes. * Export function used on mini-wasm-debugger. * Fixing line number. * Fix run tests on release. * fix compilation for multithread runtime * trying to fix multithread debugger tests on ci * trying to fix debugger tests on ci * disabling tests on multithreaded runtime * Update eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml Co-authored-by: Ankit Jain <radical@gmail.com> * Throwing an exception if the "what" is not the one that is being get from the nextNotificationQueue. --------- Co-authored-by: Ankit Jain <radical@gmail.com>
- Loading branch information
Showing
31 changed files
with
414 additions
and
139 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
trigger: none | ||
|
||
variables: | ||
- template: /eng/pipelines/common/variables.yml | ||
|
||
jobs: | ||
|
||
# | ||
# Evaluate paths | ||
# | ||
- template: /eng/pipelines/common/evaluate-default-paths.yml | ||
|
||
# Debugger tests | ||
- template: /eng/pipelines/common/templates/wasm-debugger-tests.yml | ||
parameters: | ||
platforms: | ||
- Browser_wasm | ||
- Browser_wasm_win | ||
isExtraPlatformsBuild: ${{ parameters.isExtraPlatformsBuild }} | ||
isWasmOnlyBuild: ${{ parameters.isWasmOnlyBuild }} | ||
|
||
- template: /eng/pipelines/common/templates/wasm-debugger-tests.yml | ||
parameters: | ||
platforms: | ||
- Browser_wasm | ||
- Browser_wasm_win | ||
extraBuildArgs: /p:MonoWasmBuildVariant=multithread /p:WasmEnableThreads=true | ||
nameSuffix: DebuggerTests_MultiThreaded | ||
isExtraPlatformsBuild: ${{ parameters.isExtraPlatformsBuild }} | ||
isWasmOnlyBuild: ${{ parameters.isWasmOnlyBuild }} | ||
|
||
- template: /eng/pipelines/common/templates/wasm-debugger-tests.yml | ||
parameters: | ||
platforms: | ||
- Browser_wasm_firefox | ||
browser: firefox | ||
isExtraPlatformsBuild: ${{ parameters.isExtraPlatformsBuild }} | ||
isWasmOnlyBuild: ${{ parameters.isWasmOnlyBuild }} | ||
alwaysRun: ${{ parameters.isWasmOnlyBuild }} | ||
# ff tests are unstable currently | ||
shouldContinueOnError: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.