Skip to content

Reduce startup delays caused by libsystrap #123

@stephenrkell

Description

@stephenrkell

Currently, starting a process under liballocs causes a noticeable delay while each text segment's instructions are scanned for system calls.

We could avoid this by scanning offline and caching the syscall locations in yet another part of the meta-DSO. I've very sketchily started some work on this.

Possibly a neat way to store the records is as R_X86_64_16 relocs-with-addends. Do all architectures/ABIs define a 16-bit absolute fixup? It seems very common indeed, from a scan of elf.h.

There is obviously a security issue, if we can trick liballocs into loading a mismatched meta-DSO for a given binary. I wonder how to mitigate this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions