Skip to content

Demikernel v1.1 (Stable Testing Suite)

Pre-release
Pre-release
Compare
Choose a tag to compare
@ppenna ppenna released this 02 May 13:53
· 1765 commits to dev since this release

What's Changed

  • [contrib] Updating External Dependencies by @ppenna in #123
  • [build] Copy Build Artifacts to a Installation Location by @ppenna in #124
  • [pdpix] Renaming System Calls by @ppenna in #126
  • [contrib] Upgrade nix to v0.24.0 Catnap and Catcollar by @ppenna in #127
  • [catpowder] Replace Use of Crate socket2 by @ppenna in #129
  • [catnip] Buffer::clone() for DPDKBuf by @ppenna in #132
  • [contrib] Updating Dependencies by @ppenna in #135
  • [test] UDP Push Pop Test for C API by @ppenna in #133
  • [test] TCP Push Pop Test for C API by @anandbonde in #139
  • [build] Upgrading Build System for C Tests by @ppenna in #141
  • [test] Enable inval_wait() Test by @ppenna in #143
  • [pdpix] Missing Endianness Conversion for Port Number by @ppenna in #145
  • [build] Suppress Warning Message When Building Catnap or Catpowder by @ppenna in #146
  • [catnap] Set Source Address in OperationResult for pop() by @ppenna in #149
  • [test] UDP Ping Pong for C API by @ppenna in #150
  • [test] TCP Ping Pong for C API by @ppenna in #151
  • [catcollar] Use Buffer Abstraction by @ppenna in #154
  • [pdpix] Generic Config Parsing by @ppenna in #155
  • [network] Move to std network types by @anandbonde in #157
  • [catcollar] Set Source Address in OperationResult for pop() by @ppenna in #156
  • [pdpix] Build Composition of LibOSes by @ppenna in #159
  • [inetstack] Moving In Source tree by @ppenna in #162
  • [doc] demi_push() Manual Page by @ppenna in #262
  • [doc] demi_sgaalloc() Manual Page by @ppenna in #267
  • [doc] demi_sgafree() Manual Page by @ppenna in #268
  • [doc] demi_wait() Manual Page by @ppenna in #269
  • [doc] demi_socket() Manual Page by @ppenna in #164
  • [doc] demi_init() Manual Page by @ppenna in #165
  • [doc] demi_listen() Manual Page by @ppenna in #166
  • [doc] demi_bind() Manual Page by @ppenna in #167
  • [doc] demi_accept() Manual Page by @ppenna in #261
  • [doc] demi_pushto() Manual Page by @ppenna in #263
  • [doc] demi_pop() Manual Page by @ppenna in #264
  • [doc] demi_connect() Manual Page by @ppenna in #265
  • [doc] demi_close() Manual Page by @ppenna in #266
  • [doc] Cleaning Up PDPIX API Documentation by @ppenna in #270
  • [examples] TCP and UDP Examples for Rust by @ppenna in #271
  • [build] Split makefiles for OS by @anandbonde in #273
  • [build] No Hardcode Default Path for CARGO by @ppenna in #276
  • [pdpix] timedwait() System Call by @ppenna in #277
  • [pdpix] Global State for Demikernel by @ppenna in #280
  • [catnap][catcollar] demi_socket() Fails with EADDRINUSE by @ppenna in #283
  • [pal] Shared Memory Region Abstraction by @ppenna in #286
  • [collections] Raw Array Abstraction by @ppenna in #288
  • [collections] Ring Buffer Abstraction by @ppenna in #289
  • [collections] Shared Ring Buffer Abstraction by @ppenna in #291
  • [runtime] Offset Identifiers of I/O Queue Descriptors by @ppenna in #294
  • [pdpix] Tagging Deprecated System Calls by @ppenna in #296
  • [catnip] Bug Fix: Don't Trim on SGA Clone by @ppenna in #300
  • [pdpix] Wrong Conversions Between DataBuffer and demi_sgarray_t by @ppenna in #302
  • [examples] Use PDPIX In Rust Examples by @ppenna in #303
  • [pdpix] Drop Deprecated System Calls by @ppenna in #304
  • [pdpix] Generic wait() by @ppenna in #307
  • [winport] Platform Abstraction Layer for Network by @anandbonde in #305
  • [runtime] DemiBuffer Abstraction by @BrianZill in #298
  • [test] Disable DemiBuffer UnitTest by @ppenna in #311
  • [winport] Add Windows makefiles by @anandbonde in #309
  • [runtime] Bad Deref in DemiBuffer::drop() Causes Segmentation Fault by @BrianZill in #312
  • [pdpix] Generic wait(), wait_any() and timedwait() by @ppenna in #313
  • [winport] Enhancement: Add CatnapW for Windows by @anandbonde in #314
  • [demikernel] Integrate DemiBuffer into the System as Buffer/DataBuffer Replacement by @BrianZill in #320
  • [catnip] Missing Check for Return Value of rte_eal_init() by @ppenna in #327
  • [catnip] Wrong MTU Initialization by @ppenna in #331
  • [pdpix] Timeout Interval Parameter to demi_wait() and demi_wait_any() by @BrianZill in #333
  • [collections] Mark Flaky SharedRingBuffer Unit Tests as #[ignore] by @BrianZill in #328
  • [pdpix] Use trace Logging Level to Propagate Unexpected Conditions by @ppenna in #336
  • [examples] Support Multiple Clients in tcp-echo by @ppenna in #338
  • [arp] Add Remove Function by @iyzhang in #339
  • [examples] Multi-Client Support for tcp-dump by @ppenna in #343
  • [inetstack] Accept Ethernet Multicast Packets by @BrianZill in #351
  • [tools] Initial demikernel-ci by @ppenna in #342
  • [catmem] Shared Memory LibOS by @ppenna in #348
  • [ci] Updating Catnap Workflow by @ppenna in #360
  • [ci] Updating Catpowder Workflow by @ppenna in #361
  • [ci] Updating Catcollar Workflow by @ppenna in #362
  • [catnip] Use PAL in Catnip by @anandbonde in #352
  • [ci] Checkout to Dev Branch by @ppenna in #365
  • [doc] Adding Issue Template for Questions by @ppenna in #366
  • [doc] Testing Instructions by @ppenna in #358
  • [inetstack] Push Empty Buffer on FIN by @ppenna in #370
  • [build] Bumping DPDK Version by @ppenna in #375
  • [catnapw] Use DemiBuffer Instead of Buffer/DataBuffer by @anandbonde in #378
  • [tcp] Fix Retransmit and Cleanup Retransmission Timeout Calculator by @BrianZill in #374
  • [test] Missing to Run Some Unit Tests in test-unit-rust Target by @ppenna in #373
  • [tools] Several Improvements for demikernel-ci by @ppenna in #383
  • [ci] Initial Integrating Catnapw with Regression System by @ppenna in #389
  • [doc] Fixing Minor Typos on Testing Instructions by @ppenna in #392
  • [test] tcp-ping-pong Does Not Wait for Full Receive Buffer by @ppenna in #391
  • [build] Fixing Build Warnings by @ppenna in #393
  • [ci] Enhancement: Support Config Path Override by @ppenna in #396
  • [tools] Support NFS Directories in demikernel-ci by @ppenna in #398
  • [build] Set RUST_LOG=trace when Running in Debug Mode by @ppenna in #408
  • [pal] Bad Level When Setting SO_REUSEPORT by @ppenna in #406
  • [tools] Bad Check on Number of Executed Jobs in demikernel-ci by @ppenna in #411
  • [doc] Moving Build Instructions to Standalone Document by @ppenna in #399
  • [pal] Helper Function to Convert std::net::SocketAddrV4 to libc::sockaddr_in by @ppenna in #413
  • [tools] Adding support for test directories and log files with hostnames by @iyzhang in #415
  • [tools] Minor Bug Fixes in demikernel-ci by @ppenna in #418
  • [inetstack] Handle Cancellation of Ping Requests by @ppenna in #428
  • [doc] Standalone Documentation by @ppenna in #422
  • [tools] Initial Azure Tables support by @iyzhang in #429
  • [build] Drop Dependency on Some Crates by @ppenna in #427
  • [build] Dropping Dependency on nix by @ppenna in #419
  • [catcollar] Bad Logic for Async Ongoing Operations by @ppenna in #436
  • [tools] Fixing Flag That Fails to Run Any Tests in Azure Tables Script by @iyzhang in #431
  • [memory] Marking old APIs as deprecated by @iyzhang in #439
  • [winport] Update the Windows crate 0.44.0 by @anandbonde in #437
  • [runtime] Fix issue #376: Unify memory runtime by @iyzhang in #440
  • [catloop] Initial LibOS Implementation by @ppenna in #401
  • [pdpix] Remote Address Is Not Set In demi_accept_result_t by @ppenna in #438
  • [catnapw] Set Remote Address in Accept by @ppenna in #446
  • [runtime] 32-Bit Queue Descriptors by @ppenna in #441
  • [catnap] Merge Pushto and Push Futures by @ppenna in #442
  • [test] GitHub Actions Support for Catloop LibOS by @ppenna in #447
  • [runtime] Make BASE_QD < FD_SETSIZE by @ppenna in #450
  • [ci] Skip UDP Tests in demikernel_ci for Catloop LibOS by @ppenna in #457
  • [ci] Leverage demikernel-ci to Run Regressions by @ppenna in #458
  • [build] Copy default.yaml When Installing Artifacts by @ppenna in #452
  • [build] Dropping Unused Features by @ppenna in #454
  • [build] Reenable MaybeUnit Feature for Windows by @ppenna in #460
  • [pal] Fix Byte Order Issue on Big-Endian Machines by @BrianZill in #462
  • [ipv4] Removed extraneous Parenthesis to Avoid Compiler Warning by @BrianZill in #461
  • [runtime] Remove Unused Buffer Types by @BrianZill in #464
  • [catloop] Bad Operation Result for Accept by @ppenna in #466
  • [doc] Updating Build Instructions and Manual Pages by @ppenna in #467
  • [build] Drop Dependency on byteorder Crate by @BrianZill in #468
  • [catnip] Adjust interop for PAL by @anandbonde in #470
  • [examples] Improving TCP Echo Program by @ppenna in #476
  • [build] Fixing Some Build Warnings by @ppenna in #475
  • [tools] Support Custom Output Directory in demikernel_ci by @ppenna in #474
  • [tools] Run Individual System Tests in demikernel_ci by @ppenna in #473
  • [build] Enhancement: Enable dll/lib/pdb files for Bing prototyping effort by @anandbonde in #477
  • [build] Make RUST_LOG Overridable by @ppenna in #483
  • [build Dropping Deprecated Functions by @ppenna in https://github.com//pull/484
  • [catnip] Use DemiBuffer by @ppenna in #485
  • [examples] Adding tcp-accept Program by @ppenna in #479
  • [catmem] Don't Close Pipe When EoF is Reached by @ppenna in #482
  • [script] Missing Build Dependency for DPDK by @ppenna in #487
  • [ci] Leverage demikernel_ci for Catmem LibOS by @ppenna in #488
  • [catcollar] Correctly Dree Data Structures on close() by @iyzhang in #494
  • [catnap] Free queue descriptor on close() by @iyzhang in #492
  • [ci] Fixing Regression Pipeline for Catpowder by @ppenna in #496
  • [runtime] Unify Queue Table Abstraction by @iyzhang in #486
  • [examples] TCP Bind Application by @ppenna in #500
  • [runtime] Move OperationResult out of inetstack by @iyzhang in #502
  • [pal] Retrieve errno and Propagate It in SharedMemory by @ppenna in #506
  • [runtime] Iterator over IO Queue Table by @ppenna in #513
  • [catloop] Do not Allow Multiple bind() to Same Address by @ppenna in #514
  • [catnap] Do not Allow Multiple bind() to Same Address by @ppenna in #515
  • [catcollar] Do not Allow Multiple bind() to Same Address by @ppenna in #516
  • [inetstack] Fail to Close Bound and Unbound Sockets by @ppenna in #517
  • [catloop] Several Bug Fixes for Connection Establishment / Shutdown by @ppenna in #490
  • [tests] Drop tcp_bad_bind() in Favor of tcp-bind by @ppenna in #523
  • [inetstack] Multiple Waiters for Address Resolution by @ppenna in #524
  • [pdpix] Add async_close API by @iyzhang in #527
  • [catnap] Implement async_close support by @iyzhang in #528
  • [inetstack] Implement async_close by @iyzhang in #530
  • [catnip] Implement async_close by @iyzhang in #531
  • [catpowder] Implement async_close by @iyzhang in #532
  • [catcollar] Implement async_close by @iyzhang in #533
  • [pdpix] Error Information in demi_qresult_t by @ppenna in #534
  • [ci] Enable tcp-accept in Regressions by @ppenna in #548
  • [ci] Support Test Alias by @ppenna in #553
  • [examples] tcp-close Testing Program by @ppenna in #543
  • [ci] Enabletcp-close in demikernel-ci by @ppenna in #545
  • [runtime] Improve Split Functionality in DemiBuffer by @ppenna in #546
  • [pdpix] Fixed Size demi_pop by @ppenna in #547
  • [scheduler] Rename future abstractions by @iyzhang in #555
  • [runtime] Add cooperative yielding to the scheduler by @iyzhang in #556
  • [catnap] Move from future to async coroutines by @iyzhang in #557
  • [test] Integration Tests for TCP by @ppenna in #562
  • [catnip] Append an empty string at eal_init args to be skipped by @ihchoi12 in #558
  • [catmem] Fix incorrect size comparison by @iyzhang in #564
  • [catnip] Bad Assumption on Packet Header Size by @carvalhof in #568
  • [catnap] Several Fixes Around Socket State by @ppenna in #569
  • [catmem] Invalid Queue Descriptor in Pop by @ppenna in #570
  • [ci] Enable TCP Integration Tests for Catnap LibOS in demikernel-ci by @ppenna in #572
  • [examples] Multi-Client Support for TCP Echo by @ppenna in #573
  • [catnip] Bug Fix: integer comparison in catnip:memorypool by @carvalhof in #574
  • [test] Add tests for async_close by @iyzhang in #575
  • [test] Integration Tests for wait() by @iyzhang in #576
  • [ci] Enable tcp-echo for Catnap LibOS by @ppenna in #579
  • [test] Integration Tests for TCP bind() by @ppenna in #583
  • [test] Integration Tests for TCP accept() by @ppenna in #586
  • [test] Integration Tests for TCP connect() by @ppenna in #587
  • [examples] Concurrent Mode for tcp-echo by @ppenna in #581
  • [test] Integration Tests for TCP listen() by @ppenna in #585
  • [doc] Reword TODOs in Source Tree by @ppenna in #614
  • [catmem] Connection Reset in Push and Pop by @ppenna in #595
  • [build] Drop Use of new_uninit by @ppenna in #596
  • [runtime] Adding correct cancellation of queue tokens on queue close by @iyzhang in #592
  • [inetstack] ICMP echo reply by @carvalhof in #594
  • [test] Removing Scheduler Assumptions from Tests by @iyzhang in #627
  • [test] Add sanity check to payload order by @iyzhang in #628
  • [test] Add .txt suffix to log files by @iyzhang in #629
  • [ci] GitHub Actions Fails to Upload by @ppenna in #632
  • [catloop] Collisions on Queue Token Space by @ppenna in #623
  • [catmem] Redimensioning Ring Buffer by @ppenna in #636
  • [test] Remove panic, expect and unwrap from integration tests by @iyzhang in #637
  • [test] Remove panics from pipe-open system test by @iyzhang in #639
  • [tcp-close] New whocloses semantics by @anandbonde in #630
  • [test] Remove panics from tcp-echo system test by @iyzhang in #643
  • [test] Remove panics from tcp-close system test by @iyzhang in #641
  • [test] Integration Tests for TCP create_pipe() by @ppenna in #644
  • [test] Remove panic from pipe system tests by @iyzhang in #648
  • [test] Remove panic from TCP system tests by @iyzhang in #650
  • [test] Remove panic from UDP system tests by @iyzhang in #652
  • [test] wait(): Add TCP tests around wait()/close() by @anandbonde in #654
  • [test] Add ensure_eq! macro by @iyzhang in #656
  • [test] Integration Tests for TCP open_pipe() by @ppenna in #655
  • [tcp-close] Add async_close() support by @anandbonde in #658
  • [test] Remove panic from collections unit tests by @iyzhang in #657
  • [test] Integration Tests for Pipe close by @ppenna in #660
  • [test] Remove panic from pal and perftools unit tests by @iyzhang in #663
  • [test] Remove panic from scheduler unit test by @iyzhang in #664
  • [test] Integration Tests for Pipe async_close() by @ppenna in #662
  • [test] Remove panic from runtime unit test by @iyzhang in #665
  • [catmem] Don't Check for EoF on Push by @ppenna in #667
  • [test] Rich CLI for C System Tests by @ppenna in #676
  • [test] Fix compiler errors and warnings by @iyzhang in #678
  • [test] Wait Push After Closing Pipe by @ppenna in #677
  • [test] Enable PROFILER Flag in demikernel_ci by @ppenna in #682
  • [test] Remove assert from integration tests by @iyzhang in #681
  • [contrib] Updating Dependencies by @ppenna in #685
  • [catmem] Don't Push EoF Indefinitely by @ppenna in #686
  • [test] Wait Pop After Closing Pipe by @ppenna in #683
  • [test] Switch to collect macro for tcp integration tests by @iyzhang in #688
  • [catmem] Release Queue Descriptor Even If close() Fails by @ppenna in #691
  • [test] Wait on Invalid Queue Token Pipe by @ppenna in #692
  • [test] Wait Push After Asynchronous Close by @ppenna in #693
  • [test] Wait Pop After Asynchronous Close Pipe by @ppenna in #694
  • [test] Test Macros for Demikernel by @ppenna in #695
  • [pdpix] Have a System-Wide Maximum Size for a Receive Buffer by @ppenna in #699
  • [pdpix] Consistent Behavior When listen() with Invalid Backlog Length by @ppenna in #700
  • [test] Add test for Catmem LibOS cleanup by @iyzhang in #689
  • [test] Add more async_close() tests by @anandbonde in #705
  • [pdpix] Have an Upper Limit for Fixed-Size pop()s by @ppenna in #703
  • [test] Add tcp_wait utility by @anandbonde in #690
  • [test] Add drop function to tcp echo by @iyzhang in #708
  • [test] Add drop function to pipe-open by @iyzhang in #706
  • [test] Add drop function to tcp-close by @iyzhang in #707
  • [test] Add cleanup code to pipe system tests by @iyzhang in #709
  • [test] Add cleanup to UDP system tests by @iyzhang in #713
  • [test] Add cleanup to TCP system tests by @iyzhang in #714

New Contributors

Full Changelog: v1.0...v1.1