Whistler: Live eBPF Programming from the Common Lisp REPL

20 points by atgreen 19 hours ago on lobsters | 6 comments

zmitchell | 2 hours ago

Pretty cool! Does the BPF code have CO-RE helper support?

[OP] atgreen | 2 hours ago

Yes

marcecoll | 10 hours ago

Woah, this is amazing, I've been rekindling my CL love these last couple of days. Is it SBCL only?

[OP] atgreen | 8 hours ago

The compiler is fully portable, so you can use the whistler package or whistler cli to generate bpf object files. The loader (whistler/loader) has some sbcl-isms that could probably be made portable. This is primarily used for inlining bpf code in your lisp program. Feel free to open an Issue on this.

deivid | 7 hours ago

Looks awesome! Did you find you needed to emit code in particular ways so the verifier would be happy?

[OP] atgreen | 5 hours ago

Looks awesome! Did you find you needed to emit code in particular ways so the verifier would be happy?

Yes, there were a number of little things. For instance, the verifier doesn't allow for backwards jumps, so you have to make sure the return block is at the end of the code.