-
Notifications
You must be signed in to change notification settings - Fork 824
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
Implementation of WASIX and a fully networking for Web Assembly #2941
Merged
Conversation
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
…wser - Split functionality out of WasiEnv so that it can support multi-threading - Added methods to the VFS File Trait that supporting polling - Implemented basic time functionality for WASI - Incorported a yield callback for when WASI processes idle - Improved the error handling on WASI IO calls - Reduce the verbose logging on some critical WASI calls (write/read) - Implemented the missing poll functionality for WASI processes - Moved the syspoll functionality behind a feature flag to default to WASI method - Refactored the thread sleeping functionality for WASI processes - Fixed the files system benchmark which was not compiling - Modified the file system trait so that it is SYNC and thus can handle multiple threads - Removed the large mutex around filesystem state and implemented granular locks instead (this is needed to fix a deadlock scenario on the terminal) - Split the inodes object apart from the state to fix the deadlock scenario. - Few minor fixes to some warnings when not using certain features - Sleeping will now call a callback that can be used by the runtime operator when a WASI thread goes to sleep (for instance to do other work) - Fixed a bug where paths that exist on the real file system are leaking into VFS - Timing functions now properly return a time precision on WASI - Some improved macros for error handling within syscalls (wasi_try_ok!) - Refactored the remove_directory WASI function which was not working properly - Refactored the unlink WASI function which was not working properly - Refactored the poll WASI function which was not working properly - Updates some of the tests to make them compile again - Rewrote the OutputCapturer so that it does leak into the internals
bors r+ |
bors bot
added a commit
that referenced
this pull request
Jun 15, 2022
2941: Implementation of WASIX and a fully networking for Web Assembly r=epilys a=epilys - Introduced the virtual BUS interface used for RPC between web assembly apps - Introduced the virtual networking interface used to implement networking for web assembly apps - Implemented a local implementation of the virtual networking (available behind the feature toggle 'host-net' on the 'wasi' package) - Fixed up some of the examples from the wasmer3 branch - Refactored the WASI implementations so they support wasm64-wasi - WASIX is behind its own namespaces for both 32bit and 64bit implementations Original PR by `@john-sharratt` #2930 Co-authored-by: Johnathan Sharratt <[email protected]> Co-authored-by: John Sharratt's Shared Account <[email protected]> Co-authored-by: ptitSeb <[email protected]>
bors r- |
Canceled. |
…Assembly - Introduced the virtual BUS interface used for RPC between web assembly apps - Introduced the virtual networking interface used to implement networking for web assembly apps - Implemented a local implementation of the virtual networking (available behind the feature toggle 'host-net' on the 'wasi' package) - Fixed up some of the examples from the wasmer3 branch - Refactored the WASI implementations so they support wasm64-wasi - WASIX is behind its own namespaces for both 32bit and 64bit implementations - Fixed the wasi_pipes unit test which was using internals that are no longer exposed - instead made the pipes clonable
And converted the WASI js test into a generic stdio test that works for both sys and js versions of wasmer (also fixed the tests)
bors r+ |
Build succeeded: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
for web assembly apps
(available behind the feature toggle 'host-net' on the 'wasi' package)
Original PR by @john-sharratt #2930