Skip to content

Demikernel v1.4 (Stable Catloop LibOS)

Pre-release
Pre-release
Compare
Choose a tag to compare
@ppenna ppenna released this 13 Nov 19:01
· 1089 commits to dev since this release

What's Changed

  • [build] Wrong Build Dependencies by @ppenna in #809
  • [scheduler] Improve tests by @anandbonde in #802
  • [build] Increase Build Timeout by @ppenna in #814
  • [build] Build Warnings by @ppenna in #813
  • [catloop] Inconsistent Port Allocation by @ppenna in #811
  • [inetstack] Non Ephemeral Port May Get Released by @ppenna in #810
  • [ci] Enable tcp-echo Catloop LibOS by @ppenna in #817
  • [scheduler] Several scope, readability and test improvements by @anandbonde in #819
  • [catloop] Drop Trait Implementation by @ppenna in #815
  • [catloop] Always Bound Read from Control Duplex Pipe by @iyzhang in #836
  • [catloop] Close new duplex pipe when not MAGIC_CONNECT by @iyzhang in #837
  • [scheduler] Avoid double remove() by @anandbonde in #838
  • [scheduler] Deprecate TaskHandle.deschedule() by @anandbonde in #839
  • [ci] Improve CI configurability by @anandbonde in #796
  • [scheduler] Simplified the poll function and deprecated the drop part. by @anandbonde in #840
  • [catnap] Enhancement: More compact state machine code by @iyzhang in #844
  • [catloop] Missing async_close() by @ppenna in #816
  • [ci] New workflow files by @anandbonde in #845
  • [doc]Architectural Diagram by @ppenna in #846
  • [pal] Move SOMAXCONN to PAL by @anandbonde in #849
  • [contrib] Updating Packages by @ppenna in #852
  • [scheduler] Centralize index computations, simplify TaskHandle by @anandbonde in #850
  • [runtime] Enhancement: drain for IoQueueTable by @ppenna in #855
  • [catnap] Enhancement: re-architect Catnap by @iyzhang in #851
  • [contrib] Updating Dependencies by @ppenna in #858
  • [ci] Switch to new CI architecture by @anandbonde in #854
  • [ci] No Concurrency for Catloop LibOS by @ppenna in #861
  • [catmem] Restructuring by @iyzhang in #853
  • [catnap] Move states and YielderHandle allocation into CatnapQueue by @iyzhang in #857
  • [catmem] Mutex locking by @iyzhang in #864
  • [catmem] Check for Closing and Closed Ring by @ppenna in #866
  • [examples] Handle ECANCELED by @ppenna in #871
  • [catnap] Encapsulate scheduler in runtime by @iyzhang in #867
  • [runtime] Move scheduler to shared runtime by @iyzhang in #868
  • [contrib] Updating Dependencies by @ppenna in #874
  • [catnap] State Check on push and pop by @ppenna in #873
  • [catloop] Isolating Queue State by @ppenna in #875
  • [catmem] Move to catnap arch by @iyzhang in #876
  • [network] Use PAL constants in state by @anandbonde in #877
  • [catloop] Unify Scheduler by @ppenna in #879
  • [catloop] Remove Harvest on Close by @ppenna in #880
  • [catmem] Unify scheduler and memory runtime by @iyzhang in #881
  • [catmem] Duplex Ring by @ppenna in #882
  • [catloop] Move closer to Catnap arch by @iyzhang in #883
  • [test] Correct doc and usage of pushto by @anandbonde in #892
  • [catloop] Enhancement: Schedule all coroutines from Catloop by @iyzhang in #891
  • [catloop] INADDR_ANY Should Be Supported As The Wildcard Address by @ppenna in #893
  • [catnap] Move coroutines to standalone functions by @iyzhang in #897
  • [runtime] Add IoQueueTable to DemiRuntime by @iyzhang in #898
  • [catnap] Don't Panic on Drop by @ppenna in #904
  • [catloop] Interpose Error on Connect by @ppenna in #899
  • [catloop] Disallow Bind to Non-Local Address by @ppenna in #900
  • [catloop] Don't Allow accept() On A Socket That Is Already Accepting by @ppenna in #901
  • [catnap] Check retry after try_push() by @anandbonde in #912
  • [src] Use FIXME comments instead of deprecated attribute by @anandbonde in #914
  • [catnap] Moving to Standalone Async Functions by @ppenna in #902
  • [catloop] Fixing Bugs Around Close by @ppenna in #911
  • [test] Enable Integration Tests for Catloop by @ppenna in #913
  • [catcollar] Move to async fns by @iyzhang in #909
  • [collections] Concurrent Ring Buffer by @iyzhang in #865
  • [catloop] Move IoQueueTable by @iyzhang in #907
  • [ci] Updating testing.md file. by @carvalhof in #915
  • [contrib] Updating Dependencies by @ppenna in #921
  • [catnapw] Merge the Catnapw and Catnap LibOSes by @anandbonde in #918
  • [catmem] Use Full Ring Name by @ppenna in #917
  • [catmem] Performance counters by @carvalhof in #919
  • [contrib] Updating Rust Toolchain by @ppenna in #922
  • [catloop] Performance counters by @carvalhof in #920
  • [collections] Performance counters by @carvalhof in #925
  • [catloop] Ensure Accepting in accept by @ppenna in #927
  • [catmem] Checks for Push and Pop by @ppenna in #928
  • [runtime] Move from generics to dynamic typing for I/O Queue Table by @iyzhang in #923
  • [runtime] New shared object for shared state by @iyzhang in #926
  • [catnap] Remove all Rc and replace with SharedObject by @iyzhang in #929
  • [makefile] Allowing mlx5 driver for ConnectX-6 NICs by @carvalhof in #931
  • [catloop] Updating task name by @carvalhof in #932
  • [runtime] Enhancement: Add Shared to variable name by @iyzhang in #934
  • [demikernel] Enhancement: generalize libOS APIs and C bindings from SocketAddrV4 to SocketAddr by @kyleholohan in #936
  • [demikernel] Localize packing compiler directives for Windows builds by @anandbonde in #937
  • [demikernel] Bump up the windows and socket2 crates by @anandbonde in #938
  • [catmem] Enhancement: Move to shared object by @iyzhang in #941
  • [ci] Support Concurrent Workflows by @ppenna in #939
  • [contrib] Updating Dependencies and Rust Toolchain by @ppenna in #940
  • [catloop] Move to shared object by @iyzhang in #942
  • [catmem] Enhancement: Move to shared object queues by @iyzhang in #949
  • [catloop] Enhancement: Move to shared queues by @iyzhang in #950
  • [catmem] Enhancement: Remove standalone functions by @iyzhang in #951
  • [test] Check for EBADF on Wait by @ppenna in #952
  • [catloop] Rollback If Close Fails by @ppenna in #953
  • [catloop] Error When Ring Closing/Closed by @ppenna in #948
  • [runtime] Unify Retry Test by @ppenna in #956
  • [catloop] Warn Backlog Length Listen by @ppenna in #955
  • [inetstack] Refuse Connections by @ppenna in #958
  • [catmem] Use concurrent ring buffer by @iyzhang in #959
  • [catloop] Dedup requests by @iyzhang in #961
  • [inetstack] Don't Panic if ARP Query Fail by @ppenna in #960
  • [test] TCP Wait Tests for Catloop by @ppenna in #964
  • [inetstack] Add Checks for Bind by @ppenna in #963
  • [inetstack] SeqNum and AckNum for RST Segments by @ppenna in #962
  • [demikernel] Fix Windows build errors by @anandbonde in #967
  • [demikernel] Enhancement: Remove refs to CHAR type by @anandbonde in #968
  • [contrib] Updating Dependencies by @ppenna in #972
  • [catnip] Update pointer to dpdk-rs by @anandbonde in #974
  • [catnap] Handle win connect error codes correctly by @anandbonde in #975
  • [inetstack] Move UDP stack to async from futures by @iyzhang in #561
  • [inetstack] Enhancement: move to shared object by @iyzhang in #976
  • [contrib] Updating Dependencies by @ppenna in #978
  • [inetstack] Move from futures to async functions by @iyzhang in #977
  • [runtime] Remove drop bits from scheduler by @iyzhang in #981
  • [runtime] Remove all Refcell from scheduler by @iyzhang in #980
  • [runtime] Enhancement: Move timer to explicit yielding and remove Rc construct by @iyzhang in #984
  • [catnip] Remove inner construct from memory management runtime by @iyzhang in #985
  • [runtime] Move watched value to current architecture by @iyzhang in #986
  • [collections] Enhancement: Remove unnecessary linked list by @iyzhang in #989
  • [scheduler] Remove redundant waker page offset calculation by @anandbonde in #990
  • [catcollar] Move to SharedDemiRuntime by @iyzhang in #991
  • [runtime] Enhancement: Move ephemeral port allocator into shared runtime by @iyzhang in #992
  • [runtime] Enhancement: Move clock to runtime by @iyzhang in #994
  • [runtime] Move to shared demux table by @iyzhang in #995
  • [runtime] Remove file descriptor from socket id data structure by @iyzhang in #996
  • [collections] Enhancement: refactor RingBuffer to operate more like a pipe by @kyleholohan in #983
  • [runtime] Enhancement: Remove a warning by @iyzhang in #999
  • [runtime] Enhancement: add more tracing by @iyzhang in #997
  • [catloop] Do not remove pending op for Close by @anandbonde in #1002
  • [demikernel] Improvements to the pack_result() and return path by @anandbonde in #1000
  • [inetstack] Remove spurious wake ups by @iyzhang in #998
  • [demikernel] Switch to runtime::pack_result() for catcollar and catpowder by @anandbonde in #1004

New Contributors

Full Changelog: v1.3...v1.4