Hello,
I’m working on a new test tool for the eBPF backend under GSoC that
will integrate with the DejaGnu testsuite. I want to share my
implementation plan and get feedback from the community.

The tool executes compiled eBPF programs in a virtual machine and
validates them against the kernel verifier. It uses vmtest for VM
orchestration.
Dependencies required to run the tests:
- vmtest: depends on QEMU and 9p filesystem support in the kernel:
https://github.com/danobi/vmtest?tab=readme-ov-file#dependencies
- bpftool
- Optional: Docker (for building a custom rootfs or kernel in a container)

To run the VM, we need:
- A rootfs to mount at guest's root, it can be:
    * The host system mounted via 9p
    * A custom image built from Docker
    * A standard VM image file

- A kernel to boot
The kernel must be built from source tarball to enable both eBPF
support and the features for vmtest. I tested using prebuilt distro
kernels but couldn’t find one that satisfies all required configs. It
can be built directly on the host or inside a Docker container.

I want to keep dependencies minimal and automate kernel/rootfs setup
as much as possible. Ideally, I’d like to use the host system both as
the rootfs and to build the kernel for CI environments. This avoids
the need to install Docker in CI.
At the same time, I’ll support other options so developers can choose
whatever works best for their setup.

I’d appreciate any suggestions for improvements or any concerns about
integrating this with existing CI workflows.

You can find my GSoC proposal with more context:
https://docs.google.com/document/d/1UL-mGDWyfEjne3f6uEZOI5KG4s9XTP53QZ_LJjoqn-s/
Thanks,
Piyush

Reply via email to