These patches, along with a few more hacks [1] I didn't include in this patchset, allowed me to run arm64 and armv7 version of dind image on amd64.
[1] https://github.com/yamt/qemu/tree/linux-user-for-docker You can find my test setup here: https://github.com/yamt/garbage/tree/master/binfmt-aarch64-install YAMAMOTO Takashi (5): linux-user: handle /proc/self/exe for execve linux-uesr: make exec_path realpath linux-user: Fix the execfd case of /proc/self/exe open linux-user: dup the execfd on start up linux-user: Implement pivot_root linux-user/main.c | 14 +++++++++++++- linux-user/qemu.h | 2 ++ linux-user/syscall.c | 43 ++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 55 insertions(+), 4 deletions(-) -- 2.21.1 (Apple Git-122.3)