Description of problem: Red Hat Enterprise Linux Server release 7.1 (Maipo) I sent ABRT signal to a qemu-kvm process and got no core file. May 12 17:43:21 dell-r210ii-04 kvm: 1 guest now active May 12 17:43:21 dell-r210ii-04 journal: metadata not found: Requested metadata element is not present iMay 12 17:43:34 dell-r210ii-04 journal: internal error: End of file from monitor May 12 17:43:34 dell-r210ii-04 kernel: ovirtmgmt: port 2(vnet0) entered disabled state May 12 17:43:34 dell-r210ii-04 journal: Unable to get index for interface vnet0: No such device May 12 17:43:34 dell-r210ii-04 kernel: device vnet0 left promiscuous mode May 12 17:43:34 dell-r210ii-04 kernel: ovirtmgmt: port 2(vnet0) entered disabled state May 12 17:43:34 dell-r210ii-04 kvm: 0 guests now active May 12 17:43:34 dell-r210ii-04 systemd-machined: Machine qemu-server terminated. May 12 17:43:34 dell-r210ii-04 journal: vdsm root WARNING File: /var/lib/libvirt/qemu/channels/16e0e48c-a1ee-4bad-929e-e1fa24638a28.com.redhat.rhevm.vdsm already removed May 12 17:43:34 dell-r210ii-04 journal: vdsm root WARNING File: /var/lib/libvirt/qemu/channels/16e0e48c-a1ee-4bad-929e-e1fa24638a28.org.qemu.guest_agent.0 already removed [root@dell-r210ii-04 yum.repos.d]# sysctl -a | grep core_ kernel.core_pattern = /var/log/core/core.%p.%t.dump kernel.core_pipe_limit = 0 kernel.core_uses_pid = 1 [root@dell-r210ii-04 yum.repos.d]# ls -ldZ /var/log/core drwxrwxrwt. root root system_u:object_r:virt_cache_t:s0 /var/log/core [root@dell-r210ii-04 yum.repos.d]# find /var/log/core/ -ls 403483988 0 drwxrwxrwt 2 root root 6 Apr 11 08:15 /var/log/core/ kernel-3.10.0-229.1.2.el7.x86_64 systemd-208-20.el7_1.2.x86_64 qemu-kvm-rhev-2.1.2-23.el7_1.2.x86_64 Version-Release number of selected component (if applicable): kernel-3.10.0-229.1.2.el7.x86_64 systemd-208-20.el7_1.2.x86_64 qemu-kvm-rhev-2.1.2-23.el7_1.2.x86_64 How reproducible: 100% Steps to Reproduce: 1. run a VM under rhel7 / ovirt 3.6 env 2. pkill -ABRT qemu-kvm 3. find /var/log/core Actual results: no core file Expected results: a core file for aborted qemu-kvm process Additional info:
so libvirt doesn't send any resource limits. doing detective work, it is (super)vdsmd which sets resource limits: # grep LimitCORE /usr/lib/systemd/system/{super,}vdsmd.service /usr/lib/systemd/system/supervdsmd.service:LimitCORE=infinity /usr/lib/systemd/system/vdsmd.service:LimitCORE=infinity but using this wrapper i see `ulimit -c' is '0': [root@dell-r210ii-04 libexec]# cat qemu-kvm #!/bin/sh ulimit -c > /tmp/ulimit exec /usr/bin/strace -o /tmp/strace/strace.out -f /usr/libexec/qemu-kvm.orig "$@" i tried with and without 'core_dump_enable = true' in vdsm.conf so imo settings resource limit is lost somewhere in translation :)
FYI it works ok on RHEL6: - RHEL6: supervdsm - DAEMON_COREFILE_LIMIT=unlimited... daemon function reads that vdsm - DAEMON_COREFILE_LIMIT=unlimite.. daemon function reads that - RHEL7: supervdsmd.service - LimitCORE=infinity vdsmd.service - LimitCORE=infitity
i also tried tracing it but only (semi-)relevant line is: 6846 getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
we don't do core dumps for qemu process see bug 917062 for ABRT integration which would allow proper troubleshooting info *** This bug has been marked as a duplicate of bug 917062 ***