Sean McBride
|
32a099ceec
|
refactor: http_session_receive_request asserts
|
3 years ago |
Sean McBride
|
022510950f
|
refactor: panic on full router
|
3 years ago |
Sean McBride
|
4d0da84ffb
|
fix: Correct type of strtoimax call
|
3 years ago |
Sean McBride
|
5325d82a40
|
refactor: rename json parser
|
3 years ago |
Sean McBride
|
c692746913
|
refactor: Remove duplicate total_time calc
|
3 years ago |
Sean McBride
|
98a12154fc
|
docs: Better explain http session buffer logic
|
3 years ago |
Sean McBride
|
9c67a84b62
|
fix: calloc incorrect args order
|
3 years ago |
Sean McBride
|
f6154ae6d4
|
fix: memset struct http_request
|
3 years ago |
Sean McBride
|
89b1c07146
|
feat: LOG_TENANT_LOADING
|
3 years ago |
Sean McBride
|
bdfbff9adb
|
fix: wasi context leak htt
|
3 years ago |
Sean McBride
|
c1dcc7b176
|
chore: alignment debugging
|
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
|
f656df5319
|
refactor: runtime-runqueue-size
|
3 years ago |
Sean McBride
|
d72f810567
|
feat: nonblocking request reads
|
3 years ago |
Sean McBride
|
03c489498f
|
refactor: small nits
|
3 years ago |
Sean McBride
|
c3d0fe375a
|
refactor: parsing and validation
|
3 years ago |
Sean McBride
|
576f65d846
|
refactor: http_router and session
|
3 years ago |
Sean McBride
|
162cdcd4bf
|
refactor: Remove debuglogs
|
3 years ago |
Sean McBride
|
3b05fb647c
|
test: empty
|
3 years ago |
Sean McBride
|
81b78fe395
|
test: deadline description
|
3 years ago |
Sean McBride
|
3d1431316e
|
chore: clang-format nit 2
|
3 years ago |
Sean McBride
|
36ac367491
|
chore: clang-format nit
|
3 years ago |
Sean McBride
|
05dde38ea2
|
feat: dynamic http buffers
|
3 years ago |
Sean McBride
|
69a6cbaa46
|
fix: Correct tenant listen bug
|
3 years ago |
Sean McBride
|
01cca785f4
|
feat: partial tenant implementation
|
3 years ago |
Sean McBride
|
7a62b154fc
|
refactor: refactor TCP into module
|
3 years ago |
Sean McBride
|
6965b2906d
|
feat: Preliminary routes
|
3 years ago |
Sean McBride
|
eb2ba85760
|
Merge branch 'master' of github.com:gwsystems/sledge-serverless-framework into http-parsing-listener
|
3 years ago |
Sean McBride
|
3c6477857e
|
feat: Parse HTTP request on listener core
|
3 years ago |
Sean McBride
|
160b38e4dd
|
refactor: Allocate http_session on listener
|
3 years ago |
Sean McBride
|
80b4d0e99c
|
refactor: http_session
|
3 years ago |
Sean McBride
|
64d67185f6
|
refactor: keys global const array
|
3 years ago |
Sean McBride
|
012c67457f
|
refactor: Resize back to original size
|
3 years ago |
Sean McBride
|
e6b4119652
|
refactor: JSON_TOKENS_CAPACITY
|
3 years ago |
Sean McBride
|
252ed746ed
|
fix: has_valid_size use expected_size
|
3 years ago |
Sean McBride
|
c7758bbb00
|
refactor: Abstract sandbox from http-parser
|
3 years ago |
Sean McBride
|
ee24d1f5b0
|
refactor: http-session
|
3 years ago |
Sean McBride
|
423e11c036
|
Merge branch 'master' of github.com:gwsystems/sledge-serverless-framework into json-refactor
|
3 years ago |
Sean McBride
|
cbb004cae6
|
Merge pull request #325 from gwsystems/fix-scheduler-types
feat: Improve behavior when scheduling structures fill up
|
3 years ago |
Sean McBride
|
c9fc627375
|
fix: double free
|
3 years ago |
Sean McBride
|
1457f6f2a8
|
refactor: init with module_config
|
3 years ago |
Sean McBride
|
e4c063a209
|
fix: extern module_listen
|
3 years ago |
Sean McBride
|
7f038f1269
|
refactor: jsonint parsing and module validation
|
3 years ago |
Sean McBride
|
a07533bd2c
|
refactor: move tok advance and add assumption
|
3 years ago |
Sean McBride
|
68bf915c02
|
refactor: Improve JSON validation logs
|
3 years ago |
Sean McBride
|
e27ffa5620
|
refactor: break JSON parsing out from module.c
|
3 years ago |
Sean McBride
|
b79eb44958
|
refactor: move JSON file loading from module
|
3 years ago |
Sean McBride
|
087b984e54
|
Merge pull request #332 from gwsystems/validate-socket-err-handler
doc: Remove TODO comment
|
3 years ago |
Sean McBride
|
e62fb9817f
|
fix: correct type nit
|
3 years ago |
Sean McBride
|
77f63c15de
|
feat: stub for sock_accept
|
3 years ago |
Sean McBride
|
4b076e6798
|
doc: Remove TODO comment
|
3 years ago |
Sean McBride
|
3aaa7737df
|
fix: handle NULL from realloc
|
3 years ago |
Sean McBride
|
3b92963868
|
refactor: priority_queue_grow_nolock
|
3 years ago |
Sean McBride
|
8a170e1a64
|
refactor: Move grow logic into PQ API
|
3 years ago |
Sean McBride
|
08a0f03cd5
|
refactor: change PQ capacity to exclude 0th elem
|
3 years ago |
Sean McBride
|
362bf39047
|
refactor: sandbox struct in req queue
|
3 years ago |
Sean McBride
|
6eab1e7015
|
feat: query params to wasi args
|
3 years ago |
Sean McBride
|
135ba6105f
|
chore: update wasm apps
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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 |