Contributor
Kariiem

Improving FreeBSD User Emulation of the Armv7 Architecture


Mentors
Warner Losh
Organization
QEMU
Technologies
c, qemu, freebsd
Topics
development tools, infrastructure
The proposal is about improving the QEMU emulator for the armv7 architecture on FreeBSD OS, it's goal is to get a simple C++ hello-world program to compile and run inside an armv7 jail hosted on an amd64 machine, using clang. To achieve this, about 32 syscalls need to be implemented for the qemu-bsd-user master branch, they are already implemented in the blitz branch, by the project mentor. The project is to add them to the master branch, perform testing and debugging of any errors, add them in a series of patches, each should pass the code review guidelines set up by QEMU developers. The solution starts by getting a stack trace of the syscalls that the compiler calls when using the blitz build of qemu-bsd-user, then compare them to the ones that succeed when using the master build of the qemu-bsd-user. Having done this, now we know which syscall are already added and those that are not. Now we proceed to add the missing ones, the project plan is included in the proposal. I will be delivering 32 patches to the qemu-devel mailing list, each one corresponding to a missing syscall.