Sean McBride
56f32ec44b
refactor: HTTP memstreams ( #363 )
...
* feat: response body memstream
* feat: auto_buf response header
* chore: format nit
* feat: request memstream
* removed zombie http-req-size from README files
* fix panic typos
* Update parser structure with the new http_body start address when buffer is moved by memstream
* fix case when header_length is zero at the beginning
Co-authored-by: emil <emil916@gmail.com>
3 years ago
Emil
cb09ed51ea
Updated deferable server ( #352 )
...
* refactor: use var accross the Makefile instead of sledgert string
* refactor bash libraries
- remove hash symbol for scv_to_dat
- add set_print_pretty for gdb mode
- add logging for client
- change printf format for perf log in table from float to int since usec
* cleanup: generalize redundant files in the experiments:
- remove individual gitignore, have single gitignore in parent (tests)
- remove individual env files, have single copies in 'common' dir
- remove individual install.sh, have install_tools.sh (in bash libs)
* - add comment into install_tools.sh
- rename mts to mtds
* update the env files dir to common
* move multi-tenancy env files to another directory (temp)
* apply the deferable server to the new master
* add the deferrable server env file to github CI test
* clang-format
* add deferable server attributes to all experiment specs
* remove previously added generic interface that was only for Def Serv
* Accomodated important changes Sean requested:
- remove unnecessary assertions from pri_queue.h
- set the runtime queue size to MAX_TENANT
- add the scheduler updates back to the sandbox_interrupt state transition
3 years ago
Sean McBride
50c7413f00
fix: Remove merge conflict mistake
3 years ago
Sean McBride
859b16d893
Merge branch 'master' into writeback-on-block
3 years ago
Sean McBride
9de83c5ac3
refactor: restore content-length and content-type in response
3 years ago
Sean McBride
bca75a9dd4
refactor: no http_session in sandbox lifetime.
3 years ago
Sean McBride
211f04ae67
refactor: rename to local_cleanup_queue
3 years ago
Sean McBride
38532dec63
Merge branch 'master' of github.com:gwsystems/sledge-serverless-framework into http-parsing-listener
3 years ago
Sean McBride
828650e678
feat: sandbox state hooks
3 years ago
Sean McBride
80b4d0e99c
refactor: http_session
3 years ago
Sean McBride
eb74a306ff
Wasm traps ( #301 )
...
* feat: Preliminary WASI with fib workload
* refactor: Clarify initialize globals
* chore: Update empty to WASI
* chore: cleanup fib test
* chore: cleanup build tooling
* chore: cleanup test Makefiles and some nits
* chore: Update LLVM and install WASI-SDK
* chore: Update build tools and specs
* docs: Update example module spec in README
* refactor: Clean up HTTP handling
* feat: Implement exit WASI call
* style: apply clang-format
* ci: rewrite compile sledge step
* build: Remove LLVM install shims
* build: Try manually adding libunwind
* build: Try adding libunwind-dev
* ci: break out aWsm compile step
* fix: Correct test build error
* fix: Correct error in WASI fd_write
* chore: Increase gocr http buffer size
* test: Correct image resize test
* chore: Remove zombie wasmception functions
* chore: Reduce dummy args to single arg
* chore: Add debugging makefile fivebyeight
* chore: Remove erronious PHONYs in tests Makefile
* ci: Disable gocr tests
* chore: Add wat Make rule to fibonacci test
* chore: fix apt package name
* chore: Enable clean of failed ck install
* chore: use LLVM 12
* test: Disable gocr tests
* chore: Enhance test makefile
* chore: Add CFILES as sledgert dep
* chore: Add NULL check for function table pointer
* chore: Add missing header
* chore: uncomment cleanup in imageresize test
* refactor: Remove unused linear memory functions
* build: Add bimodal debug makefile
* chore: Add linear memory debug logs
* refactor: Cleanup region initialization
* build: Correct PHONY in runtime Makefile
* chore: deb install script for outside of container
* refactor: Remove zombie extern.
* feat: WebAssembly traps
* refactor: Use C18 features
* chore: Remove git diff annotations
* fix: tweaks to run all sample apps with WASI
* test: convert shell script to Makefile
* build: clean generated ck Makefile
* chore: Use awsm branch with fixes
* chore: Revert name changes
* fix: Correct type issues
* refactor: Reverse additional name change
* refactor: Remove awsm compat shims
* chore: Remove libc association
* build: Better detect header file changes
* refactor: current_wasm_module_instance_trap
* test: reenable tests
* chore: Delete copied script
* build: Fix test workloads
* fix: Implement HTTP 500
* fix: Protect against overflow on comparison
* build: Replace test.sh with makefile
* refactor: blow away tmp directory conflicts
* refactor: centralize wasm in single submodule
* feat: libsledge and sledge ABI
* chore: move tests
* refactor: tests
* chore: update wasm_apps with new sample data
* doc: Initial ABI README
* feat: globals table
* docs: Merge aWsm ABI docs
* docs: libsledge ABI
* build: rename apps to keep consistent
* build: Disable wasm proposals
* build: Update wasm apps and fix typo
* test: test makefiles
* test: Additional test makefiles
* build: top-level build and install rules wo Docker
* docs: Add wasm lld comment
* build: top level makefile
* chore: merge debug flags
* fix: Correct out of bounds error
* feat: indirection to awsm ABI
* fix: Correct link hack with proper flag
* fix: gps typo
* chore: format nit
* ci: update makefile rules
* ci: check WASI_SDK_PATH
* fix: Adjust paths
* ci: fix make rule name
* refactor: Attempt to use generic vec
* refactor: Remove type-specific vec
* fix: Resolve assorted TODOs
* chore: fix clang format issue
* ci: Invalidate app cache on libsledge changes
* fix: Correct wasm trap check
* fix: free wasm globals
* docs: example of running top level tests via make
* chore: option to log unsupported wasi
* test: add preempt client generator for fib bimodal
* refactor: Allocate wasm memory with 4096 align
* fix: Handle build without runtime globals
* refactor: bypass runtime call for first global
* fix: Correct sandbox logging
* test: fix incorrect paths in test.mk
* refactor: cleanup basic traps logic
* test: trap_divzero
* fix: Correct inverted trap control flow
* ci: Invalidate awsm cache
* ci: divide by zero trap
* chore: Assorted cleanup
* ci: Install httpie
* chore: Remove stdio calls in libsledge
* chore: update submodules
3 years ago
Sean McBride
7cacac64c0
WIP: WASI Support ( #267 )
...
* feat: Preliminary WASI with fib workload
* refactor: Clarify initialize globals
* chore: Update empty to WASI
* chore: cleanup fib test
* chore: cleanup build tooling
* chore: cleanup test Makefiles and some nits
* chore: Update LLVM and install WASI-SDK
* chore: Update build tools and specs
* docs: Update example module spec in README
* refactor: Clean up HTTP handling
* feat: Implement exit WASI call
* style: apply clang-format
* ci: rewrite compile sledge step
* build: Remove LLVM install shims
* build: Try manually adding libunwind
* build: Try adding libunwind-dev
* ci: break out aWsm compile step
* fix: Correct test build error
* fix: Correct error in WASI fd_write
* chore: Increase gocr http buffer size
* test: Correct image resize test
* chore: Remove zombie wasmception functions
* chore: Reduce dummy args to single arg
* chore: Add debugging makefile fivebyeight
* chore: Remove erronious PHONYs in tests Makefile
* ci: Disable gocr tests
* chore: Add wat Make rule to fibonacci test
* chore: fix apt package name
* chore: Enable clean of failed ck install
* chore: use LLVM 12
* test: Disable gocr tests
* chore: Enhance test makefile
* chore: Add CFILES as sledgert dep
* chore: Add NULL check for function table pointer
* chore: Add missing header
* chore: uncomment cleanup in imageresize test
* refactor: Remove unused linear memory functions
* build: Add bimodal debug makefile
* chore: Add linear memory debug logs
* refactor: Cleanup region initialization
* build: Correct PHONY in runtime Makefile
* chore: deb install script for outside of container
* refactor: Remove zombie extern.
* feat: WebAssembly traps
* refactor: Use C18 features
* chore: Remove git diff annotations
* fix: tweaks to run all sample apps with WASI
* test: convert shell script to Makefile
* build: clean generated ck Makefile
* chore: Use awsm branch with fixes
* chore: Revert name changes
* fix: Correct type issues
* refactor: Reverse additional name change
* refactor: Remove awsm compat shims
* chore: Remove libc association
* build: Better detect header file changes
* refactor: current_wasm_module_instance_trap
* test: reenable tests
* chore: Delete copied script
* build: Fix test workloads
* fix: Implement HTTP 500
* fix: Protect against overflow on comparison
* build: Replace test.sh with makefile
* refactor: blow away tmp directory conflicts
* refactor: centralize wasm in single submodule
* feat: libsledge and sledge ABI
* chore: move tests
* refactor: tests
* chore: update wasm_apps with new sample data
* doc: Initial ABI README
* feat: globals table
* docs: Merge aWsm ABI docs
* docs: libsledge ABI
* build: rename apps to keep consistent
* build: Disable wasm proposals
* build: Update wasm apps and fix typo
* test: test makefiles
* test: Additional test makefiles
* build: top-level build and install rules wo Docker
* docs: Add wasm lld comment
* build: top level makefile
* chore: merge debug flags
* fix: Correct out of bounds error
* feat: indirection to awsm ABI
* fix: Correct link hack with proper flag
* fix: gps typo
* chore: format nit
* ci: update makefile rules
* ci: check WASI_SDK_PATH
* fix: Adjust paths
* ci: fix make rule name
* refactor: Attempt to use generic vec
* refactor: Remove type-specific vec
* fix: Resolve assorted TODOs
* chore: fix clang format issue
* ci: Invalidate app cache on libsledge changes
* fix: Correct wasm trap check
* fix: free wasm globals
* docs: example of running top level tests via make
* chore: option to log unsupported wasi
* test: add preempt client generator for fib bimodal
* refactor: Allocate wasm memory with 4096 align
* fix: Handle build without runtime globals
* refactor: bypass runtime call for first global
* fix: Correct sandbox logging
* test: fix incorrect paths in test.mk
* refactor: remove wasm traps
* refactor: Revert additional traps and changes
* refactor: Remove additional traps
* refactor: Disable exit support
* fix: block preemption in memory allocation
* feat: wasm g0 write back
* build: cleanup applications Makefile
* chore: Reorder bash variables
* docs: Add comment explaining LOG_SANDBOX_STDERR
* fix: Remove tracking of nonpreemptive siglarms
* chore: Validate Linux, C, and POSIX requirements
* build: Dry up libsledge makefile
* refactor: Remove unused macros
* fix: Writeback global 0 on cooperative sched
* refactor: Fork WASI from aWsm uvwasi example
* build: remove awsm-wasi rules
* chore: clang-format 15
* ci: apt update
* chore: clang 13
* ci: use llvm script
* ci: Use LLVM 13
* refactor: Remove WASI indirection
3 years ago
Sean McBride
35b83ba090
refactor: Eliminate _new and _delete functions
3 years ago
Sean McBride
e888a14e51
refactor: Eliminate sandbox request
3 years ago
Sean McBride
45e44d51de
feat: enable direct fast switch between sandboxes
3 years ago
Sean McBride
f3326dc929
refactor: sandbox perf log
3 years ago
Sean McBride
9ec668ec3e
refactor: rename state transitions
3 years ago
Sean McBride
3a60134d44
refactor: scheduler cleanup
3 years ago
Sean McBride
b8364bd53e
refactor: Remove preemptable
4 years ago
Sean McBride
815546852c
feat: Modified scheduler state machine
4 years ago
Sean McBride
a5739f338d
refactor: sandbox state durations
4 years ago
Sean McBride
c80dfa1db5
refactor: sandbox timestamps
4 years ago
Sean McBride
b924ed812d
feat: Simplify softint disable logic
4 years ago
Sean McBride
0b6e8e891f
refactor: Additional static inlines
4 years ago