Summary: --enable-test-oom memory allocation failure checking [default=no]
Enabling this option would have prevented this crash to happen. I do agree that having an OOM checker every memory allocation - in this case small reallocs because of logging mechanism - is nothing we should pursue because of performance issues. This is well described in here: https://libvirt.org/internals/oomtesting.html ** Description changed: This bug is just informative since I don't think the fix applies and I'll explain why. + + Description: Ubuntu 16.04.2 LTS + + libvirt-bin 1.3.1-1ubuntu10.8 + qemu-system-x86 1:2.5+dfsg-5ubuntu10.9 I was given a dump with the main thread's back trace like this: #0 0x00007f94529f1428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54 #1 0x00007f94529f302a in __GI_abort () at abort.c:89 #2 0x00007f9452a337ea in __libc_message (do_abort=do_abort@entry=2, fmt=fmt@entry=0x7f9452b4c2e0 "*** Error in `%s': %s: 0x%s ***\n") - at ../sysdeps/posix/libc_fatal.c:175 + at ../sysdeps/posix/libc_fatal.c:175 #3 0x00007f9452a3ea5a in malloc_printerr (ar_ptr=0x3, ptr=<optimized out>, str=<optimized out>, action=3) at malloc.c:5004 #4 _int_realloc (av=av@entry=0x7f9452d7fb20 <main_arena>, oldp=oldp@entry=0x55bf445eb9d0, oldsize=oldsize@entry=2912, - nb=nb@entry=2848) at malloc.c:4250 + nb=nb@entry=2848) at malloc.c:4250 #5 0x00007f9452a3fc89 in __GI___libc_realloc (oldmem=0x55bf445eb9e0, bytes=bytes@entry=2839) at malloc.c:3043 #6 0x00007f945340d2f3 in virReallocN (ptrptr=ptrptr@entry=0x7ffe2f31c0a0, size=size@entry=1, count=count@entry=2839, - report=report@entry=false, domcode=domcode@entry=0, filename=filename@entry=0x0, funcname=0x0, linenr=0) - at ../../../src/util/viralloc.c:245 + report=report@entry=false, domcode=domcode@entry=0, filename=filename@entry=0x0, funcname=0x0, linenr=0) + at ../../../src/util/viralloc.c:245 #7 0x00007f942c00c119 in qemuProcessReadLog (msg=0x7ffe2f31c098, logCtxt=<optimized out>) at ../../../src/qemu/qemu_process.c:1684 #8 qemuProcessReportLogError (logCtxt=<optimized out>, msgprefix=0x7f942c095548 "early end of file from monitor, possible problem") - at ../../../src/qemu/qemu_process.c:1696 + at ../../../src/qemu/qemu_process.c:1696 #9 0x00007f942c0223fc in qemuMonitorIO (watch=watch@entry=107, fd=<optimized out>, events=<optimized out>, events@entry=13, - opaque=opaque@entry=0x7f94000ab3b0) at ../../../src/qemu/qemu_monitor.c:718 + opaque=opaque@entry=0x7f94000ab3b0) at ../../../src/qemu/qemu_monitor.c:718 #10 0x00007f945342b393 in virEventPollDispatchHandles (fds=<optimized out>, nfds=<optimized out>) - at ../../../src/util/vireventpoll.c:509 + at ../../../src/util/vireventpoll.c:509 #11 virEventPollRunOnce () at ../../../src/util/vireventpoll.c:658 #12 0x00007f9453429c01 in virEventRunDefaultImpl () at ../../../src/util/virevent.c:314 #13 0x00007f9453575b4d in virNetDaemonRun (dmn=0x55bf445c28e0) at ../../../src/rpc/virnetdaemon.c:701 #14 0x000055bf43449407 in main (argc=<optimized out>, argv=<optimized out>) at ../../../daemon/libvirtd.c:1577 And the analysis goes in the comments... ** Changed in: libvirt (Ubuntu) Status: New => Confirmed ** Changed in: libvirt (Ubuntu) Importance: Undecided => Medium ** Changed in: libvirt (Ubuntu) Assignee: (unassigned) => Rafael David Tinoco (inaddy) -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1670659 Title: Libvirt can crash on lack of memory when starting multiple instances To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1670659/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
