Open dahavey opened 11 months ago
Removing triage label to re-triage this issue in next meeting. I think we should try to fix this sooner than later. Registry based approach has gone multiple iterations and has also caused regressions more than once due to HKLM / HKCU.
@shankarseal, @saxena-anurag, @Alan-Jowett, now that eBPF has supported multiple CPU architectures, requiring binary builds that match the host platform (to allow local eBPF verification) has become increasingly awkward. It would significantly ease developer pain if hook attributes, program attributes, etc. could be specified in a platform-agnostic file format.
@shankarseal, @saxena-anurag, @Alan-Jowett, now that eBPF has supported multiple CPU architectures, requiring binary builds that match the host platform (to allow local eBPF verification) has become increasingly awkward. It would significantly ease developer pain if hook attributes, program attributes, etc. could be specified in a platform-agnostic file format.
Agree. I was thinking we can maybe switch to json files, with these files being placed in well-known place like ProgramData\ebpf
.
Whenever any extension is installed / uninstalled, it can add /remove config file for its program and attach types to the same location.
Whenever ebpfapi.dll is initialized, it will parse all the files present in ProgramData\ebpf
, and populate the program info, etc.
There are a few other scenarios which we will also need to ensure that they work -- for example, using a nuget package to build ebpf programs.
This sounds great. For nuget/devbuild scenarios, it would also be useful if additional search directories could be specified.
@mtfriesen - please work on the design for this
Discussed in https://github.com/microsoft/ebpf-for-windows/discussions/3044