@glyph @mcc @b0rk and then there's the subtle differences between the semantics of syscalls and the semantics of the libc wrappers around them...
anyway yeah there's definitely some explanation for this that wouldn't be too hard to find by reading all the sources. we're not sure we want to, it feels cooler as magic