microsoft / microsoft/ebpf-for-windows
Generate data for PGO optimization of eBPF binaries
- Dominant language
- C
- Stars
- 3.6k
- Forks
- 311
- Avg merge
- 6d 10h
- Merged PRs (30d)
- 21
Description
Proposal:
1) Convert bpf_xdp_dsr.o to bpf_xdp_dsr.sys.
2) Load the resulting driver, populate its various maps.
3) Use BPF_PROG_TEST_RUN to pass packet data to the program.
This test harness can serve two purposes:
1) Stress test for eBPF for Windows. - this will be covered by #2097, #2099 and #2150.
2) Allow us to generate PGO training data.
Contributor guide
Research direction
Start by tracing how bpf_xdp_dsr.o is built and how eBPF programs are loaded on Windows, then inspect the BPF_PROG_TEST_RUN entry point. The work is done when the resulting bpf_xdp_dsr.sys can be loaded, its maps populated, packet data passed through the program, and repeatable PGO training data generated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- operating-systems, performance, testing-qa
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100