* Enable capturing triage dump on test crash
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* PR feedback
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
Co-authored-by: Alan Jowett <alan.jowett@microsoft.com>
* Use LLVM version 11.0.1
Fixes#962
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Updated expected bpf2c output from LLVM 11
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
Co-authored-by: Alan Jowett <alanjo@microsoft.com>
* WIP: Developer nuget package
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Add bpf2c utility
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Build nupkg from within VisualStudio
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Don't use relative path to externals
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update props file in nuget package
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix include and library paths
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix debug build
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
Co-authored-by: saxena-anurag <43585259+saxena-anurag@users.noreply.github.com>
* Remove ebpf_verify_program API
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* Remove old test
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* Cleanup runners
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* PR feedback
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* Cleanup old artifacts
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
Co-authored-by: Alan Jowett <alan.jowett@microsoft.com>
* Add script to simplify generating native images from BPF.
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* Update test scripts
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* Update test scripts
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* PR feedback
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* PR feedback
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
Co-authored-by: Alan Jowett <alan.jowett@microsoft.com>
* Update test scripts
* Make KM runner execute bpftool tests
* Make the run_tests.bat script also execute bpftool tests
* Make deploy-ebpf.ps1 -t copy all files needed for testing
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix test
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix merge error
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
Co-authored-by: saxena-anurag <43585259+saxena-anurag@users.noreply.github.com>
* Add diagrams and discussion of native driver execution type
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* PR feedback
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
Co-authored-by: saxena-anurag <43585259+saxena-anurag@users.noreply.github.com>
* Add BPF_PROG_TYPE_CGROUP_SOCK_ADDR program type and CGROUP_INET4/6_CONNECT/RECV_ACCEPT attach types.
* PR Feedback #1.
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* fix crash.
* use NMR APIs.
* program info provider; bind program info
rename attach provider as hook provider
function renaming
* refactor hook providers.
* async client detach.
* cicd automation and documentation.
* PR Feedback.
* switch to server 2019.
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
Co-authored-by: Alan Jowett <alanjo@microsoft.com>
* Add option EBPF_JIT_ALWAYS_ON to permit building EC with no interpreter
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Add documentation on using compile time options
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Set EBPF_JIT_ALWAYS_ON for release builds
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Tests should expect interpret to fail if EBPF_JIT_ALWAYS_ON is defined
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Rename EBPF_JIT_ALWAYS_ON to CONFIG_BPF_JIT_ALWAYS_ON
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Tests should expect interpret to fail if EBPF_JIT_ALWAYS_ON is defined
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Update docs/GettingStarted.md
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* Load returns EBPF_PROGRAM_LOAD_FAILED
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Split up load into individual test cases
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Program load fails with EBPF_PROGRAM_LOAD_FAILED
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* Skip tests that depend on interpret mode when it's disabled
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
* PR feedback
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* minor updates to arch diagram
* update the png file based on the visio
* update extension description
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* More improvements on GettingStarted.md
* Update docs/GettingStarted.md
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* Update docs/GettingStarted.md
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* Add documentation on how to debug the kernel of a VM.
* Add network debugging as an alternative link
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Remove reference to MSVC Runtime from docs as it is no longer needed
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* Update netsh commands to use more standard libbpf apis
* Add support for libbpf bpf_obj_pin() API
* Add support for libbpf bpf_object__next() API
* Rename BPF_{PROG,ATTACH}_TYPE_UNKNOWN to ...UNSPEC for libbpf compat
* Remove now-unused handle APIs ebpf_api_load_program and
ebpf_api_pin_object, which is part of issue #383
* netsh set/delete program now uses the ID to identify the program,
like bpftool does, so that it can work even if the program wasn't
loaded from an ELF file
Fixes#191
Signed-off-by: Dave Thaler <dthaler@microsoft.com>