Release-v0.20.0
Pre-release
Pre-release
What's Changed
- Override
bpf_get_current_pid_tgid
for 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_table
for 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
559482c
to525b8b3
by @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_tests
as system by @saxena-anurag in #3857 - Avoid unneeded atomic operations by @Alan-Jowett in #3878
- Bump external/ebpf-verifier from
4907f1b
to07a6da0
by @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
6025c9b
to16266b9
by @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
88a336d
tod91240e
by @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 their first contribution in #3943
- @bunseokbot made their first contribution in #3983
Full Changelog: Release-v0.19.2...Release-v0.20.0