GSoC 2019: Efficient syscall tracing for strace

Dmitry V. Levin ldv at
Mon Apr 8 20:53:34 UTC 2019


On Mon, Apr 08, 2019 at 10:15:50PM +0200, Paul Chaignon wrote:
> Hello all,
> Please find my GSoC application draft below.
> I'm sorry for posting it so close to the deadline (I have been working on
> my PhD defense for the last few months).  I hope you will still consider it.
> Regards,
> Paul

Thanks for choosing strace project.
Please note that the deadline for submitting the final proposal is close.

> There are several opportunities to improve the current cBPF filter: it
> currently contains a few unnecessary instructions and implements a linear
> matching algorithm over the syscall numbers (although it takes ranges of
> continuous numbers into account).  To limit the number of instructions,
> the cBPF program could also match on the reverse set of syscalls (match
> against syscalls that should be RET_ALLOWed instead of RET_TRACEd) when
> that makes sense.

I suppose libseccomp might be a good source of ideas for generating a more
optimal cBPF program.

> Tentative schedule:
> ==============
> Week 1: Add more tests for seccomp-bpf
> Week 2: Add support and tests for ARM
> Week 3: Prepare patchset for seccomp-bpf & Work on review rounds for
>   seccomp-bpf
> Week 4: Work on review rounds for seccomp-bpf
> Week 5: Improve cBPF program and run evaluations
> 28/06 - Phase 1 deadline - Result: seccomp-bpf merged or in good state
> Week 6: Rebase alt-backends
> Week 7: Rebase alt-backends
> Week 8: Prepare RFC patchset for alt-backends
> Week 9: Develop PoC of tracepoint/BPF backend
> 26/07 - Phase 2 deadline - Result: alt-backends posted on mailing list
> Week 10: Develop PoC of tracepoint/BPF backend
> Week 11: Prepare patchset for alt-backends & Work on review rounds
> Week 12: Final week to work on review rounds if necessary
> 19/08 - Final deadline - Result: alt-backends merged or in good state +
>   RFC for tracepoint/BPF backend

It's not quite clear from this schedule whether do you plan to work
on the gdbserver backend as well.

If you do, please mention it in the schedule.

The gdbserver backend would likely make some people happy but
it would also take some of your GSoC time.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <>

More information about the Strace-devel mailing list