LeechCore Style DMA Converter
Budget / SalaryC$10–30
TypeFreelance project
LocationRemote
Posted2 hours ago
I’m building a converter that mirrors the behaviour of LeechCore, letting a physical PCIe device carry out high-speed DMA into or out of a KVM/QEMU guest while the host keeps full control. The job is to design and code the complete data-path: a small Linux kernel module (or VFIO extension) that exposes the device’s BARs, plus the matching QEMU patch or user-space helper that maps those DMA buffers safely into the virtual machine.
You will decide the cleanest architecture, write the low-level C code, and supply a working proof-of-concept on an up-to-date kernel/QEMU stack. I expect well-commented source in a Git repo, clear build scripts, and a short demo showing a guest performing DMA transfers without crashing or corrupting memory.
Deliverables
- Kernel-side driver or VFIO hook
- QEMU patch / helper that completes the translation
- README with build and run instructions
- Demo showing successful guest DMA
Acceptance criteria
The code must compile on a vanilla recent kernel, patch QEMU with no warnings, and sustain DMA bandwidth close to native PCIe speed for at least 60 s under stress without data loss.
If you’re comfortable digging into PCIe specs, Linux kernel internals, and QEMU device emulation, I’d like to hear how you’d approach the task and a rough timeline for the first working build.
You will decide the cleanest architecture, write the low-level C code, and supply a working proof-of-concept on an up-to-date kernel/QEMU stack. I expect well-commented source in a Git repo, clear build scripts, and a short demo showing a guest performing DMA transfers without crashing or corrupting memory.
Deliverables
- Kernel-side driver or VFIO hook
- QEMU patch / helper that completes the translation
- README with build and run instructions
- Demo showing successful guest DMA
Acceptance criteria
The code must compile on a vanilla recent kernel, patch QEMU with no warnings, and sustain DMA bandwidth close to native PCIe speed for at least 60 s under stress without data loss.
If you’re comfortable digging into PCIe specs, Linux kernel internals, and QEMU device emulation, I’d like to hear how you’d approach the task and a rough timeline for the first working build.
Apply on Freelancer →
Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.