This is a nice article. I ran into this same issue implementing telefork, except I had the newer Docker version she mentions. This meant for me ptrace worked perfectly but then process_vm_readv failed mysteriously (you may notice it in Julia’s source code excerpt but nothing in the Docker commit that enables ptrace enabling it). I was confused like Julia because nothing in the man pages suggested why process_vm_readv could fail when it was supposed to work based on ptrace permissions and ptrace was working. I don’t quite remember but I think I figured it out by guessing it might be Docker and searching the Docker source for process_vm_readv and finding that same snippet.