Hello all!
Recently we spent about ten minutes and successfully ported our eBPF+ engine to Android 14. eBPF+ is an enhanced version of eBPF that we use in our OpenResty XRay product. The simplest two test cases for kprobes and uprobes have already passed on Android 14.
The implementation of Android is almost identical to the Linux kernel, so it was very smooth. It looks like it can also be easily compatible with older versions of Android down to Android 10. The next step is to run more eBPF+ unit tests until we run the huge test suites of our compilers, such as Ylang, YLua, and YSQL.
The difference in Android user space is bigger, such as using bionic libc, the header file of epoll is quite different from Linux, and it also enforces the use of PIE executable files.
To learn more about our eBPF+ and Ylang:
https://blog.openresty.com/en/ylang-intro-part1/
Feedback and questions are welcome :)