kmesh-net / kmesh

High Performance ServiceMesh Data Plane Based on Programmable Kernel
https://kmesh.net
Apache License 2.0
362 stars 46 forks source link

Split the ebpf code directory of ads and workload. #339

Closed bitcoffeeiux closed 1 month ago

bitcoffeeiux commented 1 month ago

Task description: Currently, workload and ads are two independent functions. In the eBPF code directory structure, workload is stored in an independent directory, and ads is not stored in an independent directory. In addition, the workload directory is placed at the same level as the ads code, which does not comply with the logic. And the workload contains the config.h file that conflicts with the ads. As a result, when a developer who is not familiar with kmesh adds an ebpf program, the config.h file of the ads may be included first, and the config.h file of the workload becomes invalid. Or the definition of workload is incorrectly referenced as the definition of ads, which increases the fault locating cost.

Solution: Therefore, it is recommended that ads and workload be separated into independent directories to facilitate future management and evolution.

Who can join or take the task:

The good first issue is intended for first-time contributors to get started on his/her contributor journey.

After a contributor has successfully completed 1-2 good first issue's, they should be ready to move on to help wanted items, saving the remaining good first issue for other new contributors.

How to join or take the task:

Just reply on the issue with the message /assign in a separate line.

Then, the issue will be assigned to you.

How to ask for help:

If you need help or have questions, please feel free to ask on this issue. The issue author or other members of the community will guide you through the contribution process.

bfforever commented 1 month ago

/assign

hzxuzhonghu commented 1 month ago

Another point i want to supplement, some maps and functions can be shared

bfforever commented 1 month ago

@hzxuzhonghu maybe map_of_manager and kmesh manager pod logic can be shared.