eunomia-bpf / bpftime

Userspace eBPF runtime for Observability, Network & General Extensions Framework
https://eunomia.dev/bpftime/
MIT License
819 stars 76 forks source link

[FEATURE] Use frida as a submodule #343

Open yunwei37 opened 2 months ago

yunwei37 commented 2 months ago

Is your feature request related to a problem? Please describe.

We have get some bug report and performance issues related to Frida, it would be better to manage it as a submodule instead of download binary from the release.

191 #137

Describe the solution you'd like

Use Frida as submodule in third_party dir.

Officeyutong commented 2 months ago

Do you mean to build frida from source?

yunwei37 commented 2 months ago

Yes. Using https://github.com/frida/frida-gum

Officeyutong commented 2 months ago

Yes. Using https://github.com/frida/frida-gum

Building frida is very complex and slow, it requires many dependencies (such as meson) and can't be integrated into CMake, It also takes about 10 minutes on my machine(E5 2697v2 *2) to build. I suggest not doing such thing, since frida releases pre built binaries

yunwei37 commented 2 months ago

You can try open a github codespace and type make to compile the frida-gum? It taake about 30s-1min to compile on Github Codespace. The codespace's hardware is very limited.

I think it's not a complex process to compile it. Maybe you have some network issues?

Officeyutong commented 2 months ago

You can try open a github codespace and type make to compile the frida-gum? It taake about 30s-1min to compile on Github Codespace. The codespace's hardware is very limited.

I think it's not a complex process to compile it. Maybe you have some network issues?

I still suggest using prebuilt binaries since frida released them, I suggest using source only when there is not binary release. Since building from source may slow down the compile process.

Also, is there any dependency needs to be installed manually when building frida? From the CI of frida, seems meson should be installed

yunwei37 commented 2 months ago

I agree with you. Maybe using frida as a binray would be better.

For the performance problem, I think maybe we can have our own release by building frida ourselves in another repo?

Officeyutong commented 2 months ago

I agree with you. Maybe using frida as a binray would be better.

For the performance problem, I think maybe we can have our own release by building frida ourselves in another repo?

We may create a fork and let CI release them if we made some changes to frida

yunwei37 commented 2 months ago

Agree that.