Sean McBride
|
362bf39047
|
refactor: sandbox struct in req queue
|
3 years ago |
Sean McBride
|
d93b224d4d
|
chore: cleanup args logic
|
3 years ago |
Sean McBride
|
6eab1e7015
|
feat: query params to wasi args
|
3 years ago |
Sean McBride
|
d05a58af75
|
feat: module name as first argument
|
3 years ago |
Sean McBride
|
255461198d
|
fix: wasi args
|
3 years ago |
Sean McBride
|
b101e8bcda
|
feat: Remove exit trap
|
3 years ago |
Sean McBride
|
135ba6105f
|
chore: update wasm apps
|
3 years ago |
Sean McBride
|
ac374e72fd
|
feat: unreachable trap support
|
3 years ago |
Sean McBride
|
cac0b32520
|
Merge pull request #318 from gwsystems/sigfpe-wasm-trap
feat: sigfpe and sigsegv wasm traps
|
3 years ago |
Sean McBride
|
7a9b2ce938
|
feat: linear memory OOB via SIGSEGV handler
|
3 years ago |
Sean McBride
|
a0474d34f2
|
chore: Remove zombie macros
|
3 years ago |
Sean McBride
|
4b1aec0788
|
fix: global_request_scheduler_deque_add type
|
3 years ago |
Sean McBride
|
37a203c774
|
fix: unmask SIGFPE handler no preemption
|
3 years ago |
Sean McBride
|
62a8dafa7c
|
feat: sigfpe wasm traps
|
3 years ago |
Sean McBride
|
908cdefa3b
|
fix: Remove memory size from perf log
|
3 years ago |
Sean McBride
|
5bee5bf6bd
|
Merge pull request #306 from gwsystems/dynamically-size-global-table
feat: Dynamically size runtime globals
|
3 years ago |
Sean McBride
|
02187fefc5
|
Merge pull request #308 from gwsystems/valgrind-nits
Valgrind nits
|
3 years ago |
Sean McBride
|
85294ccd96
|
fix: Correct error handling get_globals_len
|
3 years ago |
Sean McBride
|
cf2d136c81
|
refactor: stack use mprotect
|
3 years ago |
Sean McBride
|
15c6606353
|
refator: replace malloc with calloc
|
3 years ago |
Sean McBride
|
2be838b11e
|
fix: PAGE_SIZE used before defined
|
3 years ago |
Sean McBride
|
d1009f4987
|
fix: flipped calloc args
|
3 years ago |
Sean McBride
|
2c64f7ed41
|
refactor: Add missing header
|
3 years ago |
Sean McBride
|
bd94d0e645
|
fix: Check heap allocations
|
3 years ago |
Sean McBride
|
32469bf1ab
|
fix: state history not flexible array member
|
3 years ago |
Sean McBride
|
5f5d99952a
|
fix: invalid dereference of array in memset
|
3 years ago |
Sean McBride
|
ba21a7f09c
|
fix: Use default content type if needed
|
3 years ago |
Sean McBride
|
9cef2280bc
|
refactor: Remove unused value
|
3 years ago |
Sean McBride
|
ece929ebe9
|
chore: Remove fd logs
|
3 years ago |
Sean McBride
|
54f36f8471
|
feat: Dynamically size runtime globals
|
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
|
1cb220f348
|
fix: Correct globals bugs
|
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
|
5d19891e63
|
feat: libsledge pattern for wasmception (#299)
* feat: libsledge pattern for wasmception
* ci: build libsledge
* ci: fix YAML whitespace issue
* ci: fix another YAML whitespace issue
* fix: Correct type issues in memcpy
* ci: debug permissions
* ci: restore build rules
* chore: Change wasmception init symbol
* chore: Assored cleanup
* fix: update g0 cache on preemption
* refactor: inline global vec in sandbox struct
* chore: trailing newline on JSON
* chore: Clean up extraneous file associations
* docs: Explain export and weak symbols
* docs: Remove comment
* refactor: Replace CHAR_BIT with limits.h
* refactor: Remove redundant unlikely define
* docs: Wasmception fn type checking disabled note
|
3 years ago |
Sean McBride
|
4ba4cf4969
|
feat: Add new HTTP codes
|
3 years ago |
Sean McBride
|
31226d5bdd
|
refactor: Move tests
|
3 years ago |
Sean McBride
|
ffc7573ec9
|
fix: Resolve wasmception build issues
|
3 years ago |
Sean McBride
|
ea728b013b
|
chore: Move apps
|
3 years ago |
Sean McBride
|
65434b15e5
|
feat: Abstract vec
|
3 years ago |
Sean McBride
|
e89696d911
|
refactor: DRY up pool macro
|
3 years ago |
Sean McBride
|
9eec575e9e
|
refactor: remove size_t from wasm_stack
|
3 years ago |
Sean McBride
|
d562a9315d
|
refactor: Shift module valildation to JSON parsing
|
3 years ago |
Sean McBride
|
639fa953b6
|
docs: Better explain bounds check assertions
|
3 years ago |
Sean McBride
|
35b83ba090
|
refactor: Eliminate _new and _delete functions
|
3 years ago |
Sean McBride
|
fdaff6c666
|
docs: Add more inline docs about buffers
|
3 years ago |
Sean McBride
|
7d91a9cfc0
|
refactor: rename self
|
3 years ago |
Sean McBride
|
a044f8ec37
|
fix: redundant wasm memory wipe
|
3 years ago |
Sean McBride
|
2a21db9a34
|
style: remove extra newline
|
3 years ago |
Sean McBride
|
ba05a924d3
|
refactor: Align on doulbe cache line
|
3 years ago |
Sean McBride
|
773dbf3f70
|
refactor: Align memory pools on cache lines
|
3 years ago |
Sean McBride
|
b652613ece
|
refactor: Invert pool structure
|
3 years ago |
Sean McBride
|
e1cb478262
|
fix: Correct sandbox free stack logic
|
3 years ago |
Sean McBride
|
a446ed077a
|
Merge branch 'spec-alignment-2' of github.com:gwsystems/sledge-serverless-framework into object-pool
|
3 years ago |
Sean McBride
|
452db10284
|
refactor: wasm_memory_get_string
|
3 years ago |
Sean McBride
|
57d95388b1
|
refactor: wasm_table
|
3 years ago |
Sean McBride
|
3cf4580b5d
|
refactor: wasm_memory
|
3 years ago |
Sean McBride
|
4b1f9914f7
|
refactor: flatten http buffers
|
3 years ago |
Sean McBride
|
ae48d1ace6
|
fix: Spell environment correctly
|
3 years ago |
Sean McBride
|
acff35683a
|
fix: send_reponse err handling
|
3 years ago |
Sean McBride
|
569fdd39ea
|
refactor: Use INLINE macro throughout compiletime
|
3 years ago |
Sean McBride
|
b3dc7db31c
|
feat: wasm_stack object pool
|
3 years ago |
Sean McBride
|
2311ec1ccf
|
feat: wasm_memory pool
|
3 years ago |
Sean McBride
|
f51da123e2
|
fix: Corrected assorted bugs
|
3 years ago |
Sean McBride
|
332b492761
|
refactor: mem instructions
|
3 years ago |
Sean McBride
|
13b123866f
|
refactor: reorder memory_instructions
|
3 years ago |
Sean McBride
|
22d3890e06
|
fix: correct error handling wasm_stack
|
3 years ago |
Sean McBride
|
f1e1e852ae
|
build: Makefile cleanup
|
3 years ago |
Sean McBride
|
e888a14e51
|
refactor: Eliminate sandbox request
|
3 years ago |
Sean McBride
|
5e9c7d08d9
|
fix: debug assorting context switch issues
|
3 years ago |
Sean McBride
|
f4ede43b52
|
feat: WIP restage of memory allocation features
|
3 years ago |
Sean McBride
|
5efee76cae
|
refactor: header include nit
|
3 years ago |
Sean McBride
|
13e8407884
|
chore: Adjust memory path
|
3 years ago |
Sean McBride
|
ded4717ed8
|
docs: Create compiletime README
|
3 years ago |
Sean McBride
|
93a7ed0017
|
chore: format nit
|
3 years ago |
Sean McBride
|
3259808b57
|
Merge branch 'tests-makefile-cleanup' into spec-alignment
|
3 years ago |
Sean McBride
|
1f25f3dbd1
|
build: Update test.sh install logic
|
3 years ago |
Sean McBride
|
01bca00be4
|
build: Makefile cleanup
|
3 years ago |
Sean McBride
|
1a34f91cdd
|
refactor: table instructions
|
3 years ago |
Sean McBride
|
bb41caeae0
|
refactor: Remove zombie table instruction
|
3 years ago |
Sean McBride
|
30c3d17a2c
|
refactor: Rename memory_instructions
|
3 years ago |
Sean McBride
|
9bc023bd1b
|
chore: rename instr
|
3 years ago |
Sean McBride
|
8d563a5f53
|
refactor: Further sigalrm changes
|
3 years ago |
Sean McBride
|
9b7cefccd7
|
refactor: Cleanup sigalrm handler
|
3 years ago |
Sean McBride
|
9b2f1905a5
|
docs: high level intro to scheduler
|
3 years ago |
Sean McBride
|
098829113b
|
docs: Better explain memory barriers
|
3 years ago |
Sean McBride
|
3982c2db5a
|
build: Revert sledgert command
|
3 years ago |
Sean McBride
|
522809de8d
|
chore: pin clang-format 11
|
3 years ago |
Sean McBride
|
84820219e0
|
format: clang-format
|
3 years ago |
Sean McBride
|
886bdbb970
|
fix: Add interrupted perf log header
|
3 years ago |
Sean McBride
|
c845bcce8e
|
fix: Correct nit when NDEBUG is set
|
3 years ago |
Sean McBride
|
45e44d51de
|
feat: enable direct fast switch between sandboxes
|
3 years ago |
Sean McBride
|
74a715febb
|
fix: Update state assertion in FIFO round robin
|
3 years ago |
Sean McBride
|
06910736d1
|
feat: Improved sandbox timekeeping
|
3 years ago |
Sean McBride
|
72e6c3e043
|
refactor: Cleanup deferred sigalrm handling
|
3 years ago |
Sean McBride
|
ce132b7bcc
|
fix: Remove extra memory barriers
|
3 years ago |
Sean McBride
|
132401177c
|
fix: protect preemption changes with mem barriers
|
3 years ago |
Sean McBride
|
43592da622
|
feat: signal tracking and pretty printing
|
3 years ago |
Sean McBride
|
cf5e6ea72d
|
feat: replay deferred sigalrms
|
3 years ago |
Sean McBride
|
64e35f767e
|
Merge pull request #282 from gwsystems/http-resp-headers
feat: More detailed HTTP response headers
|
3 years ago |
Sean McBride
|
f3326dc929
|
refactor: sandbox perf log
|
3 years ago |
Sean McBride
|
89e0305b6f
|
feat: More detailed HTTP response headers
|
3 years ago |
Sean McBride
|
fb7f657db4
|
fix: correct LOG_HTTP_PARSER buffer
|
3 years ago |
Sean McBride
|
9bd12e5403
|
fix: Correct valid state in sandbox init error
|
3 years ago |
Sean McBride
|
3ada5aa08a
|
refactor: Move triage logic to scheduler
|
3 years ago |
Sean McBride
|
9ec668ec3e
|
refactor: rename state transitions
|
3 years ago |
Sean McBride
|
3a60134d44
|
refactor: scheduler cleanup
|
3 years ago |
Sean McBride
|
54848b765a
|
fix: correct memset to use bytes not nelems
|
4 years ago |
Sean McBride
|
59f491f48a
|
refactor: Replace magic number
|
4 years ago |
Sean McBride
|
ccdaf1038c
|
build: stop redundant ck builds
|
4 years ago |
Sean McBride
|
f62ba1459b
|
build: Cleanup runtime Makefile
|
4 years ago |
Sean McBride
|
de0659806c
|
chore: Disable HTTP features in hey
|
4 years ago |
Sean McBride
|
613310d4c5
|
chore: disable debug flag
|
4 years ago |
Sean McBride
|
ba3a179475
|
Merge branch 'master' of github.com:gwsystems/sledge-serverless-framework into preemptable-debugging
|
4 years ago |
Sean McBride
|
8c6ac3eb7b
|
format: Fix clang-format whitespace nit
|
4 years ago |
Sean McBride
|
d01aaa8e9f
|
Merge branch 'master' of github.com:gwsystems/sledge-serverless-framework into preemptable-debugging
|
4 years ago |
Sean McBride
|
c4bcd6fedb
|
Merge pull request #266 from meilier/fix-cflags-DLOG_LOCK_OVERHEAD
fix compile error when open CFLAGS -DLOG_LOCK_OVERHEAD
|
4 years ago |
Sean McBride
|
b8364bd53e
|
refactor: Remove preemptable
|
4 years ago |
Sean McBride
|
7e85bb4c59
|
refactor: more semantic names
|
4 years ago |
Sean McBride
|
7ccf845389
|
refactor: deadline updates to current_sandbox_set
|
4 years ago |
Sean McBride
|
815546852c
|
feat: Modified scheduler state machine
|
4 years ago |
Sean McBride
|
2c1a33970e
|
fix: stack error handling memory leak
|
4 years ago |
Sean McBride
|
a61ac83575
|
chore: remove FIXME
|
4 years ago |
Sean McBride
|
1a73d630a7
|
chore: Add trailing newline to JSON
|
4 years ago |
Sean McBride
|
bf5f31adad
|
fix: multi-module JSON has top array
|
4 years ago |
Sean McBride
|
574dd81791
|
chore: Comment gocr type check
|
4 years ago |
Sean McBride
|
ebf6dc2e84
|
refactor: Use C18 features
|
4 years ago |
Sean McBride
|
96fbac9b30
|
chore: Remove unclear FIXME
|
4 years ago |
Sean McBride
|
448befd8cd
|
refactor: Remove cyclic include
|
4 years ago |
Sean McBride
|
651eeeb868
|
chore: Comment compiletime get_function_from_table
|
4 years ago |
Sean McBride
|
c185c751bd
|
feat: -1 on wasm memory.grow instruction failure
|
4 years ago |
Sean McBride
|
ed61a97d9f
|
refactor: Move VLA to handle clang-12 error
|
4 years ago |
Sean McBride
|
1bb92816c8
|
docs: Remove zombie comment
|
4 years ago |
Sean McBride
|
f477653893
|
test: update resize to use jpg
|
4 years ago |
Sean McBride
|
f9d6a22ac4
|
chore: comment out fn type check for gocr
|
4 years ago |
Sean McBride
|
724a51c280
|
chore: Update submodules
|
4 years ago |
Sean McBride
|
5ec222c9e6
|
build: Remove zombie tests
|
4 years ago |
Sean McBride
|
dd52cbd7e6
|
refactor: sandbox stderr goes to host
|
4 years ago |
Sean McBride
|
4bc4358993
|
fix: bound check off by one
|
4 years ago |
Sean McBride
|
31d4a317a1
|
fix: correct typo
|
4 years ago |
Sean McBride
|
e5b7b69f9b
|
fix: correct void type issue
|
4 years ago |
Sean McBride
|
613cc620d5
|
refactor: Remove redundant wasm instruction bodies
|
4 years ago |
Sean McBride
|
bf0d7299ef
|
feat: fix offset type and assert bounds check
|
4 years ago |
Sean McBride
|
0846092782
|
build: Fix thirdparty linkage issues
|
4 years ago |
Sean McBride
|
0f265aa08f
|
build: Remove ck Makefile dep
|
4 years ago |
Sean McBride
|
9d95308a57
|
build: Makefile cleanup
|
4 years ago |
Sean McBride
|
4751c52ede
|
fix: priority queue nits
|
4 years ago |
Sean McBride
|
b2262245d4
|
fix: perf_window VLAs
|
4 years ago |
Sean McBride
|
2d39dc700c
|
fix: add missing wasm memory size instruction
|
4 years ago |
Sean McBride
|
38f163cf17
|
refactor: wasmception modified sandbox struct
|
4 years ago |
Sean McBride
|
f61f34f08a
|
refactor: Clean up HTTP handling
|
4 years ago |