That seems to be in code generated from sljit. Since that's a crash and it's different from the one without valgrind the suspicion arises that valgrind can't deal with this. I looked around a bit and it seems you need to run valgrind with --smc-check=all when using sljit [1]. Default setting on x86 is all-non-file [2], but I suspect this is treated as file-backed mapping even though the file has already been deleted. The man page for memfd_create says that it behaves like anonymous memory in every way, but it is shown as backed by a file. [1] https://github.com/JuliaLang/julia/issues/10171#issuecomment-75126574 [2] https://www.valgrind.org/docs/manual/manual-core.html#manual-core.rareopts