Releases: microsoft/ebpf-for-windows
Releases · microsoft/ebpf-for-windows
v1.0.0-rc1
Highlights
This is the release-candidate for v1.0 of eBPF for Windows. The important changes include:
- Proof of Verification: This feature enforces that only those native eBPF programs are loaded, that are packaged in kernel drivers that are signed by a Microsoft issued certificate with the "eBPF verification" EKU. This certificate proves that the native program was generated from an input BPF program that passed verification and was converted using the bpf2c toolchain.
- Breaking changes in libbpf implementations: Changes in behavior in various libbpf functions including
bpf_prog_attach,ring_buffer__new,perf_buffer__newand lifetime management functions for nested map types, to align closely with the Linux behavior.
What's Changed
- Perf Event Array map user-mode API implementation with tests by @kumarvin123 in #4302
- [main] Update spd file for ebpfcore by @saxena-anurag in #4345
- Cleanup map subscription on failure by @Alan-Jowett in #4347
- run ring buffer stress on multiple cores. by @shankarseal in #4348
- Extend timeout of api_tests in the CICD task to 10 minutes by @shankarseal in #4350
- Add CI/CD workflow to validate YAML files by @dthaler in #4362
- fixing configuration for driver_native_only_tests. by @shankarseal in #4367
- Fix a few NuGet packaging issues by @abeltrano in #4328
- update version to 0.22.0 by @shankarseal in #4336
- Update OneBranch PostBuildEvent to use platform-scoped destination directory by @abeltrano in #4372
- Capture native image name during attach by @Alan-Jowett in #4374
- Pickup latest ebpf-verifier by @Alan-Jowett in #4368
- Update WDK from 10.0.26100.2454 to 10.0.26100.3323 by @Alan-Jowett in #4369
- Fix redist nuspec by @saxena-anurag in #4382
- Update regression tests by @saxena-anurag in #4383
- bpf: support log_true_size for BPF_PROG_LOAD by @lmb in #4360
- Don't detach link if link doesn't exist by @Alan-Jowett in #4399
- Pick latest verifier by @Alan-Jowett in #4400
- Design proposal for new ring buffer API by @mikeagun in #3848
- Canonicalize pin paths by @dthaler in #4274
- JIT and bpf2c use different verifier options by @Alan-Jowett in #4324
- [StepSecurity] ci: Harden GitHub Actions by @step-security-bot in #4415
- Build arm64 binaries on arm64 runners by @Alan-Jowett in #4416
- Arm64 test by @Alan-Jowett in #4417
- Workflow to check PRs. by @shankarseal in #4430
- Add guidance to eBPF extension writers about pointers in contexts by @dthaler in #4408
- change to pull_request_target. by @shankarseal in #4435
- Proposal to introduce "Proof of Verification" feature for eBPF programs. by @Alan-Jowett in #4420
- Remove ASAN workaround by @saxena-anurag in #4438
- Update PR template to request references to issues and other miscellaneous changes. by @shankarseal in #4332
- Naming of fields in ebpf_core_object_t is inconstent by @Alan-Jowett in #4437
- Implement hashing of native modules on load and add authorization calls by @Alan-Jowett in #4440
- Always install ebpfsvc by @Alan-Jowett in #4442
- Enable HVCI for native only tests by @Alan-Jowett in #4448
- Move authorization to ebpfsvc by @Alan-Jowett in #4447
- Added -g option to clang compile commands by @JustinHahn8902 in #4461
- Address YAML validation warnings by @dthaler in #4456
- Fix procdump security issue by specifying version in choco install commands by @Copilot in #4462
- Switch to static C++ runtime and dynamic C runtime by @Alan-Jowett in #4460
- Copy signed binaries and headers to the output directory by @Alan-Jowett in #4458
- Strip white space from end of lines by @Alan-Jowett in #4473
- Fix failures caused by VS 2022 v17.14.7 by @Alan-Jowett in #4477
- Add negative lookup tests for inner map in hash_of_map test case by @nigriMSFT in #4463
- Add support for driver test execution on host; Add ARM64 driver tests by @matthewige in #4449
- Fix CI/CD failures by installing LLVM 18.1.8 explicitly by @Copilot in #4505
- Cleanup perf array test async calls on failure. by @mikeagun in #4482
- support both local and fork repos. by @shankarseal in #4490
- update extension document and minor changes. by @shankarseal in #4496
- Switch bpf2c to pull its own nuget dependencies by @Alan-Jowett in #4502
- Remove module hashes after verification. by @Alan-Jowett in #4450
- Require Microsoft Corporation eBPF Verification issuer and EKU by @Alan-Jowett in #4478
- Add JIT versions of KM stress tests to ensure complete test coverage by @Copilot in #4525
- Remote vm cicd by @LakshK98 in #4489
- Fix capitalization inconsistency of "execution context" in documentation by @Copilot in #4501
- Improve dump compression retry logic and add fallback for uncompressed uploads by @Copilot in #4529
- Fix _update_array_map_entry_with_handle to correctly handle array indices > 255 by @Copilot in #4466
- Mitigate code scanner alerts by @shankarseal in #4541
- Connect redirect test enhancements: add implicit bind and UDP redirect_context tests by @matthewige in #4543
- Add Concurrency tests for sock ops by @LakshK98 in #4555
- ringbuffer: direct mmap consumers by @lmb in #4493
- Fix inconsistency between verifier declaration and implementation of helpers by @Alan-Jowett in #4518
- Cleanup: Remove duplicate EBPF_NANO_SECONDS_PER_FILETIME_TICK define by @Copilot in #4476
- Fix codeql task. by @shankarseal in #4568
- Fix certificate verification to check subject instead of issuer by @Copilot in #4576
- Implement granular ETW tracing for per-test trace collection; Add collection of networking traces to driver tests by @Copilot in #4540
- Fix scorecard workflow by @dthaler in #4592
- Update to latest WDK by @Alan-Jowett in #4546
- User mode synch by @Alan-Jowett in #4524
- use allocate with tags for hash table. by @shankarseal in #4599
- Fix indentation of "pinned" parameter help text in netsh ebpf add program by @ramlah7 in #4600
- Fix scorecard workflow by @dthaler in #4596
- Fix sock_ops code flow and test by @LakshK98 in #4587
- Fixes inconsistent behavior in sample_ext prog_test_run by @houha2 in #4562
- stream-layer flow classify hook proposal by @mikeagun in #4545
- Prevent NULL filename in verify_and_authorize_native_image by @Alan-Jowett in #4631
...
Release-v0.21.1
What's Changed
- [release/0.21] Fix redist nuspec by @saxena-anurag in #4391
- [release/0.21] CP PRs #4328, #4372 to release branch. by @saxena-anurag in #4389
- update version to 0.21.1 by @saxena-anurag in #4392
Full Changelog: Release-v0.21.0...Release-v0.21.1
Release-v0.21.0
Highlights
-
This release introduces the following breaking changes:
- Add support for program loading flags - breaking change version: pull request #3763
- Make context header support mandatory: pull request #4267
- Remove obsolete prog-specific helper function: pull request #4287
- Add versioning to native module NMR interface: pull request #4256
Any eBPF extension or eBPF programs must be recompiled to work with this version of the eBPF runtime.
-
This release also introduces support for
BPF_MAP_TYPE_PERF_EVENT_ARRAY.
What's Changed
- update version to 0.21 by @shankarseal in #4030
- Update
release-schedulertemplate with checkbox for SPGO data by @saxena-anurag in #3987 - Short circuit printk if tracing is not enabled by @Alan-Jowett in #4035
- Use OneBranch feed when building in OneBranch by @Alan-Jowett in #4028
- Fix crash in execution context fuzzer by @dthaler in #4037
- Update verifier to latest by @dthaler in #4033
- Checking in bpf2c generated files using Clang 18.1.8 by @Alan-Jowett in #4038
- Speedup walking the free-list by @Alan-Jowett in #4036
- Upload regression as CSV by @Alan-Jowett in #4029
- expand stack to 16KB for sock_addr hook. by @shankarseal in #4048
- Add EBPF_LOG_MAP_OPERATION in ebpf_map find, update and delete function by @shpalani in #4032
- Add support for multiple levels of bpf2bpf calls by @dthaler in #4047
- Update spd for ebpfcore by @saxena-anurag in #4049
- add .vsconfig file by @lmb in #4050
- Fix refcount leaks by @Alan-Jowett in #4057
- Update upload-perf-results.yml by @Alan-Jowett in #4045
- handle timeout on driver stop. by @shankarseal in #4055
- Approximate time helpers by @Alan-Jowett in #4013
- Don't clone pe-parse test dataset by @dthaler in #4066
- Always count entries on debug builds by @Alan-Jowett in #4058
- Check for leaked ref-count when fuzzing by @Alan-Jowett in #4053
- Switch to v0.11.0 of BPF performance by @Alan-Jowett in #4064
- Use volatile write when writing to user buffer by @Alan-Jowett in #4068
- Script to update WDK version by @Alan-Jowett in #4080
- Add API tests for ARM64 builds by @Alan-Jowett in #4083
- Don't attempt to cross-compile native images by @Alan-Jowett in #4084
- Fix incorrect platform reference in kernel_mode_bpf2c.vcxproj by @Alan-Jowett in #4086
- Speedup case where ringbuf is full by @Alan-Jowett in #4081
- Fix hard-coded x64 paths by @Alan-Jowett in #4090
- Fix incorrect path to downloaded script by @Alan-Jowett in #4089
- File issue to update wdk by @Alan-Jowett in #4088
- Update OneFuzzConfig.json to file in correct ADO project by @Alan-Jowett in #4094
- [netebpfext] Add deleted filter contexts to zombie list for debugging purposes by @matthewige in #4003
- Grant LOCAL SERVICE permission to read and execute debug DLLs by @lmb in #4095
- bpf(): improve map and program compatibility by @lmb in #3980
- Update usersim by @Alan-Jowett in #4105
- Update wdk by @Alan-Jowett in #4104
- Build unit tests arm64 by @Alan-Jowett in #4085
- Check if test process failed to start. by @shankarseal in #4120
- Update ebpf verifier by @Alan-Jowett in #4121
- [StepSecurity] ci: Harden GitHub Actions by @step-security-bot in #4119
- Grant access to api.deps.dev by @Alan-Jowett in #4118
- Build native-only arm64 by @Alan-Jowett in #4136
- Remove workaround for test failure by @Alan-Jowett in #4138
- Uninstall ebpf by product id by @Alan-Jowett in #4141
- Change clang version to 18.1.8 in formatting script. by @shankarseal in #4143
- changes to zombie list. by @shankarseal in #4145
- Add --verbose option to bpf2c by @Alan-Jowett in #4140
- Update _single_instance_hook to set link type by @Alan-Jowett in #4139
- arch diag update by @shankarseal in #4153
- Proposal for perf event arrays by @mikeagun in #4122
- netsh ebpf show verif should verify all sections by @dthaler in #4154
- Set linker flag to improve stackwalking when unwinding through BPF related code by @Alan-Jowett in #4156
- Update Catch2 and fix multi-threaded tests by @saxena-anurag in #4155
- Onboard WS2025 tests to scheduled runs using 1ES Pool by @matthewige in #3966
- Reformat all code with clang-format 18.1.8 by @Alan-Jowett in #4180
- Set /W3 for all external projects by @Alan-Jowett in #4183
- project milestone issue limit. by @shankarseal in #4167
- BREAKING CHANGE Add support for program loading flags - breaking change version by @Alan-Jowett in #3763
- km_stress_test fixes by @matthewige in #4117
- Detect cases where maps in symbol table and btf differ by @Alan-Jowett in #4193
- Validate previous key by @Alan-Jowett in #4195
- Add ebpf_get_next_pinned_object_path by @lmb in #4164
- Don't call require from non-main thread by @Alan-Jowett in #4197
- Temporarily skip stopping ebpf services in testing by @matthewige in #4203
- Code cleanup. by @shankarseal in #4184
- Global variable support by @Alan-Jowett in #4166
- Remove REQUIRE from async path by @Alan-Jowett in #4210
- Export functions necessary for ebpf-go port by @lmb in #4116
- Enable WER for tests without code coverage by @Alan-Jowett in #4219
- Organize nupkgs for publishing by @surajkrishnan14 in #4214
- Limit bss section size to reasonable value by @Alan-Jowett in #4213
- [Part-1] native module changes for per-instance load by @saxena-anurag in #4175
- Onboard 23h2 test runs to scheduled builds by @matthewige in #4221
- Add ebpf_object_load_native_by_fds by @lmb in #4209
- Update CODEOWNERS by @shankarseal in #4238
- Switch to nuget feed for llvm by @Alan-Jowett in #4226
- Update verifier by @Alan-Jowett in #4222
- Pickup bpf_performance with post-breaking changes by @Alan-Jowett in #4244
- set EBPF_ID_NONE to 0 by @LakshK98 in #4242
- Fix version check by @Alan-Jowett in #4247
- Remove REQUIRE from non-main thread by @Alan-Jowett in #4248
- Fix llvm build break on new GitHub r...
Release-v0.19.2
What's Changed
- Fixes to several bugs found by OneFuzz tests in execution context, netebpext and verifier.
- Update main version to 0.19.0 by @shpalani in #3730
- invalid prog data tests. by @shankarseal in #3718
- Strings library API proposal by @ben-zen in #3719
- Upload netperf results on schedule runs by @Alan-Jowett in #3738
- Remove undocked solution. by @shankarseal in #3739
- Update post-build.ps1 by @shankarseal in #3755
- Group dependabot pull requests by @dthaler in #3753
- Add dependency for git_commit_id.h by @Alan-Jowett in #3756
- Documentation update with xdp_test by @shpalani in #3752
- Switch to using Visual Studio's version of LLVM and Clang by @Alan-Jowett in #3754
- Correct obsolete comment by @dthaler in #3767
- Fix AV in netebpfext by @saxena-anurag in #3769
- Fix Setup-DevEnv.ps1 by @lmb in #3770
- Switch to 26100 version of the WDK by @Alan-Jowett in #4070
- update version to 0.19.2 by @shankarseal in #4071
Full Changelog: Release-v0.18.0...Release-v0.19.2
Release-v0.20.0
Highlights
Release includes ARM64 bits.
What's Changed
- Override
bpf_get_current_pid_tgidfor sock_ops hook. by @shankarseal in #3765 - Add ADO pipelines by @Alan-Jowett in #3741
- Stamp all tools with version information. by @Alan-Jowett in #3792
- First string functions for ebpf general helpers. by @ben-zen in #3780
- Added ntosext extensions in the GettingStarted.md document. by @shpalani in #3785
- relocate installer license to avoid "multiple licenses" text on GitHub by @mtfriesen in #3802
- Inline _ebpf_adjust_value_pointer to reduce cost of ebpf_map_find_entry by @Alan-Jowett in #3804
- Switch to crc32 if available for hashing function by @Alan-Jowett in #3803
- Multi-attach support for SOCK_ADDR programs by @saxena-anurag in #3751
- change version to 0.20.0 by @shankarseal in #3815
- XDP declarations are moved from ebpf_nethooks.h. by @shpalani in #3793
- Remove
metadata_tablefor prog array map lookup by @saxena-anurag in #3816 - Add retry logic when scripts fail to extract a zip file by @matthewige in #3812
- Bump external/ebpf-verifier from
559482cto525b8b3by @dependabot in #3819 - Stack expansion in netebpfext by @saxena-anurag in #3817
- update onebranch scripts. by @shankarseal in #3824
- Support dynamically adding and removing CPUs from epoch tracking by @Alan-Jowett in #3771
- Add step to log CPU info by @Alan-Jowett in #3828
- remove --no-verify option from bpf2c and tests using it by @mikeagun in #3673
- Update log retention time to 10 days by @saxena-anurag in #3837
- Set the freed_epoch to current_epoch, not 0 by @Alan-Jowett in #3850
- Prevent double activation by @Alan-Jowett in #3854
- Update store APIs to also update HKLM (#3660) by @saxena-anurag in #3853
- update release doc. by @shankarseal in #3832
- Always use clang from Visual Studio folder by @Alan-Jowett in #3867
- run
api_testsas system by @saxena-anurag in #3857 - Avoid unneeded atomic operations by @Alan-Jowett in #3878
- Bump external/ebpf-verifier from
4907f1bto07a6da0by @dependabot in #3881 - Cleanup spurious white-space by @Alan-Jowett in #3887
- Remove dead code related to cmake by @Alan-Jowett in #3888
- Switch WIX installer project to current wix version by @Alan-Jowett in #3889
- Enforce memory ordering in RCU aware hash-table by @Alan-Jowett in #3890
- Allow platform specific eBPF nuget packages to be created by @Alan-Jowett in #3892
- Refactor common platform and config into Directory.Build.props by @Alan-Jowett in #3891
- Wrap platform specific code in approriate #defines by @Alan-Jowett in #3894
- Backwards compatible fixes to bpf() syscall emulation by @lmb in #3870
- Centralize eBPF version to Directory.Build.props by @Alan-Jowett in #3893
- Return EBADF for negative object fds by @lmb in #3901
- Support TraceLoggingBinary for map find, update and delete. by @shpalani in #3781
- Bump the actions group with 2 updates by @dependabot in #3882
- Update sha256 hash for Setup-DeveEnv.ps1 script execution by @abeltrano in #3831
- Revert CPU activation code until issues are resolved by @Alan-Jowett in #3909
- Return ENOENT from bpf_obj_get when no pinned object exists by @lmb in #3899
- bpf(): return ENOENT when looking up out-of-bounds index in array by @lmb in #3902
- [netebpfext] Add per-provider WFP handles to avoid improper use from parallel invocations by @matthewige in #3866
- Switch to group affinity to work correctly on systems with > 64 CPUs by @Alan-Jowett in #3923
- Add support for building ARM64 native only eBPF for Windows. by @Alan-Jowett in #3921
- Doc update to InstallEbpf.md and SelfHostedRunnerSetup.md. by @shpalani in #3896
- User/vpidatala/issue3762/8 by @vpidatala94 in #3943
- Return ENOENT from array maps containing object references by @lmb in #3933
- update scripts to handle test hangs. by @shankarseal in #3947
- scripts: copy VC runtime debug DLLs into installation folder by @lmb in #3957
- Switch to cxplat_get_current_processor_number by @Alan-Jowett in #3959
- Add proposal for ABI compatible bpf() emulation by @lmb in #3898
- bpf(): make union bpf_attr Linux ABI compatible by @lmb in #3948
- Don't abort program if next_key is NULL in ebpf_map_get_next_key() by @lmb in #3900
- add bpf2c support for non-inlined local function calls by @dthaler in #3506
- Update verifier to latest by @dthaler in #3974
- Fix bpf_map_lookup_and_delete_batch API by @shpalani in #3688
- bpf(): allow creating nested maps by @lmb in #3968
- Bump external/ebpf-verifier from
6025c9bto16266b9by @dependabot in #3979 - chore: fix section argument typo by @bunseokbot in #3983
- Run all scripts as job with timeout. by @shankarseal in #3971
- Tag ELF files with platform specific section by @lmb in #3969
- Switch to fuzzing main branch by @Alan-Jowett in #3988
- Fix powershell string formatting bug by @Alan-Jowett in #4004
- Remove netperf on azure upload attempt as azure VMs have been retired by @Alan-Jowett in #4000
- Avoid raising and lowering the IRQL if not needed by @Alan-Jowett in #4007
- Add support for cache aligned epoch memory and switch maps to use it by @Alan-Jowett in #4008
- Speedup LRU by using the faster timestamp API by @Alan-Jowett in #3990
- Add support for bpf2bpf calls with stack variables by @dthaler in #3997
- Bump external/usersim from
88a336dtod91240eby @dependabot in #3994 - Implement faster pattern of IRQL check + KeAcquireSpinLockAtDpcLevel by @Alan-Jowett in #4011
- Build using WDK Nuget for more consistent builds by @Alan-Jowett in #4024
- Fuzzing bug fixes by @shankarseal in #3989
- Use _DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR in builds by @matthewige in #4014
- Update ubpf by @Alan-Jowett in #3965
- Cherry pick needed commits from main to 0.20 release branch. by @shankarseal in #4056
- Cherry pick changes from main to release/0.20 by @shankarseal in #4067
New Contributors
- @abeltrano made their first contribution in #3831
- @vpidatala94 made...
v0.18.0
What's Changed
- Proposal for multiple load of native programs. by @saxena-anurag in #3566
- Update regression tests to 0.17 by @saxena-anurag in #3642
- Enable building and signing eBPF for Windows by @Alan-Jowett in #3651
- Remove VC++ Redist package from installation instruction by @shpalani in #3636
- Remove netperf from daily schedule until it's fixed by @Alan-Jowett in #3654
- Simplify native module handle cleanup by @Alan-Jowett in #3653
- Add hint to LTCG that code should be inlined by @Alan-Jowett in #3658
- Fix conflict between Windows and ubpf headers by @Alan-Jowett in #3665
- Speedup ebpf_handle_table_terminate by avoiding acquire/release of lock by @Alan-Jowett in #3605
- Fix bpf conformance failure by @Alan-Jowett in #3666
- Set empty program name to hash of instructions by @mikeagun in #3493
- [StepSecurity] ci: Harden GitHub Actions by @step-security-bot in #3679
- Add batch map APIs in Doxygen documentation by @shpalani in #3652
- Update harden-runner for release scheduler by @dthaler in #3680
- Use
context_headerfor tail call perf improvement by @saxena-anurag in #3698 - update version to 0.18.0 by @shankarseal in #3690
- Upgrade all C_ASSERT to static_assert by @Alan-Jowett in #3702
- [bpf_map_lookup_batch] Fix bpf_map_lookup_batch data retrieval and add test cases for percpu hash map batch lookup by @shpalani in #3590
- UM API to write into a ring buffer map. by @shankarseal in #3689
- Special case integer key sizes by @Alan-Jowett in #3710
- _ebpf_link_instance_invoke_with_context_header should call correct batch_end api by @Alan-Jowett in #3709
- Include
export_program_info.exein redist nuspec by @saxena-anurag in #3711 - Turn netperf on for daily runs by @Alan-Jowett in #3715
- Implement
implicit_contextfor helper functions. by @saxena-anurag in #3656 - Add test case for program order in native module by @saxena-anurag in #3686
- Set errno for bpf_object__find_map_by_name by @shpalani in #3712
Full Changelog: Release-v0.17.0...Release-v0.18.0
Release v0.17.1
What's Changed
- Update store APIs to also update HKLM by @saxena-anurag in #3660
- update release version to 0.17.1 by @shankarseal in #3674
Full Changelog: Release-v0.17.0...Release-v0.17.1
v0.17.0
What's Changed
- Pickup fix for iovisor/ubpf#432 by @Alan-Jowett in #3476
- Update verifier to latest by @dthaler in #3454
- Update isa-support.rst with latest from ebpf-docs by @dthaler in #3477
- Change allocator to reject large allocation sizes by @Alan-Jowett in #3487
- Fixes for memory leaks and crashes by @saxena-anurag in #3485
- Implement
bpf_get_socket_cookie()by @saxena-anurag in #3464 - Set allocator_may_return_null=1 as an environment variable by @Alan-Jowett in #3494
- Revert overly strict check in link attach to provider by @Alan-Jowett in #3495
- Fix formatting issues in isa-support.rst by @dthaler in #3488
- Add support for unlimited map size by @saxena-anurag in #3348
- Increase stack depth for PR fault_injection tests by @saxena-anurag in #3489
- The netperf run fails due to missing Azure 2025 results by @Alan-Jowett in #3499
- Partition LRU key history to reduce contention. by @Alan-Jowett in #3459
- PR feedback by @Alan-Jowett in #3510
- Update copyright to be eBPF for Windows contributors by @dthaler in #3508
- Update ebpf verifier by @Alan-Jowett in #3527
- Fix bpf2c output format by @dthaler in #3532
- Update version by @shankarseal in #3533
- proposed changes to issue prioritization. by @shankarseal in #3516
- Pickup latest ubpf and fix breaking contract changes by @Alan-Jowett in #3531
- Phase 1 of removing the rundown protection for invoke by @Alan-Jowett in #3534
- Cache choco packages to work around connectivity issues by @Alan-Jowett in #3536
- Add documentation to eBpfExtensions.md to clarify use of hash by @Alan-Jowett in #3559
- Add option to control the level of verbosity emitted by verifier. by @Alan-Jowett in #3570
- Add
total_sizeto extension header. by @saxena-anurag in #3573 - [bpf_map_lookup_batch] Add test case to retrieve data in batches by @shpalani in #3563
- Disable tailcall multi-threaded stress test for now. by @dv-msft in #3558
- Add connection contexts to hash table by @matthewige in #3036
- Pickup latest ubpf and fix breaking changes by @Alan-Jowett in #3581
- Fix for breaking change P2905R2 in STL by @Alan-Jowett in #3589
- Cleanup batch APIs and remove unused parameter by @Alan-Jowett in #3580
- Add support for multiple programs per section by @dthaler in #3557
- Fixes for kernel mode multi-threaded test by @dv-msft in #3560
- Add workaround for NmrRegisterClient calling detach by @Alan-Jowett in #3594
- Move
ebpf_link_dispatch_table_version_ttoebpf_extension.hby @saxena-anurag in #3593 - Implement libbpf autoload APIs by @dthaler in #3592
- Multiple MSVC related fixes by @saxena-anurag in #3623
New Contributors
Full Changelog: Release-v0.16.0...Release-v0.17.0
Release-v0.16.0
What's Changed
- Reallocate packet by @shankarseal in #3344
- update release version to 0.16.0 by @shankarseal in #3423
- Add script to forcefully remove ebpf-for-windows by @Alan-Jowett in #3441
- Add missing required option for reusable-build.yml by @Alan-Jowett in #3450
- Switch to merged netperf logs by @Alan-Jowett in #3452
- Update install script to refresh Path by @mikeagun in #3462
- Improve verifier fuzzer by @Alan-Jowett in #3431
- Various fixes to the extension version logic. by @shankarseal in #3432
- Fix memory leak in _duplicate_program_descriptor() (#3473) #3478
- Fixes for memory leaks and crashes (#3485) #3496
- Revert overly strict check in link attach to provider (#3495) #3496
New Contributors
Full Changelog: Release-v0.15.1...v0.16.0
Release-v0.15.1
What's Changed
- Cherry pick PR #3422 by @shankarseal in #3434
- Update to version 0.15.1 by @matthewige in #3435
Full Changelog: Release-v0.15.0...Release-v0.15.1