Hello Michael, I did some more experiments, and it seems it works if the host has just a little bit more than 1 GiB of RAM. With exactly 1 GiB it fails, with 1152MiB it works.
Michael Tokarev [2020-05-26 12:55 +0300]: > 26.05.2020 12:10, Michael Tokarev пишет: > > Control: tag -1 + moreinfo unreproducible > > > > 26.05.2020 11:27, Martin Pitt wrote: > >> But with 5.0, not any more: > >> > >> | $ admin@debian:~$ qemu-system-x86_64 -nographic > >> | Could not allocate dynamic translator buffer > > > > This is something.. wrong. > > This happens during early init state, before qemu tries to run > > any guest code, before even initializing virtual CPUs. > > > > By default the command above definitely works just fine here. > > Do you have some init/conf file which is read by qemu at > > startup, something in /etc/qemu/qemu.conf maybe? > > Can you please run this simple command under strace and post/attach > strace output? Full strace: https://paste.centos.org/view/71ec1d55 This is the interesting bit: 13489 io_uring_setup(128, {flags=0, sq_thread_cpu=0, sq_thread_idle=0, sq_entries=128, cq_entries=256, features=IORING_FEAT_SINGLE_MMAP|IORING_FEAT_NODROP|IORING_FEAT_SUBMIT_STABLE|IORING_FEAT_RW_CUR_POS|IORING_FEAT_CUR_PERSONALITY, sq_off={head=0, tail=64, ring_mask=256, ring_entries=264, flags=276, dropped=272, array=4928}, cq_off={head=128, tail=192, ring_mask=260, ring_entries=268, overflow=280, cqes=320}}) = 6 13489 mmap(NULL, 5440, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_POPULATE, 6, 0) = 0x7f43e1a96000 13489 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_POPULATE, 6, 0x10000000) = 0x7f43e1a94000 [...] 13489 mmap(NULL, 528384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f43de7ca000 13489 mmap(NULL, 1073741824, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory) That last mmap indeed tries to map 1 GiB, which isn't available if the host has 1 GiB only (minus some reserved kernel memory). Martin