Lee Webb created CLOUDSTACK-8025:
------------------------------------
Summary: SEGV in libvirtd when live migrating CentOS 6.6 x86_64
Key: CLOUDSTACK-8025
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-8025
Project: CloudStack
Issue Type: Bug
Security Level: Public (Anyone can view this level - this is the default.)
Components: KVM
Affects Versions: 4.4.1
Environment: CentOS 6.6 x86_64
Dell PowerEdge M420
Intel E5-2470 v2 @ 2.40GHz
libvirt-0.10.2-46.el6_6.2.x86_64
Reporter: Lee Webb
Hi There,
I'm not entirely sure whether I should raise with against libvirt project,
however ...
When attempting to live migrate an instance from one compute node to another
libvirtd dies with a Segmentation Fault & it's 100% reproducible on 5 different
hosts.
Steps to reproduce:
1. Start Instance of CentOS 6.6 x86_64, then wait for it to come up
2. Migrate Instance to another available Compute Node
3. Popup message appears stating Input / Ouput Error
On the target Compute node libvirtd states that there has been a segmentation
fault.
Following is a backtrace for the core:
{code}
#0 __strcmp_sse42 () at ../sysdeps/x86_64/multiarch/strcmp.S:260
#1 0x00007f7d92dd6411 in x86ModelFind (cpu=0x7f7d68003440, map=0x7f7d680021e0,
policy=1) at cpu/cpu_x86.c:831
#2 x86ModelFromCPU (cpu=0x7f7d68003440, map=0x7f7d680021e0, policy=1) at
cpu/cpu_x86.c:850
#3 0x00007f7d92dd87e8 in x86Compute (host=<value optimized out>,
cpu=0x7f7d68003440, guest=0x7f7d82f04df0, message=0x7f7d82f04de0) at
cpu/cpu_x86.c:1243
#4 0x00000000004aac4e in qemuBuildCpuArgStr (conn=0x7f7d50000920,
driver=0x7f7d78013b20, def=0x7f7d68002830, monitor_chr=0x7f7d680026f0,
monitor_json=true, caps=0x7f7d68002c50,
migrateFrom=0x7f7d680136d0 "tcp:[::]:49152", migrateFd=-1, snapshot=0x0,
vmop=VIR_NETDEV_VPORT_PROFILE_OP_MIGRATE_IN_START) at qemu/qemu_command.c:4516
#5 qemuBuildCommandLine (conn=0x7f7d50000920, driver=0x7f7d78013b20,
def=0x7f7d68002830, monitor_chr=0x7f7d680026f0, monitor_json=true,
caps=0x7f7d68002c50, migrateFrom=0x7f7d680136d0 "tcp:[::]:49152",
migrateFd=-1, snapshot=0x0,
vmop=VIR_NETDEV_VPORT_PROFILE_OP_MIGRATE_IN_START) at qemu/qemu_command.c:5320
#6 0x000000000048a2cc in qemuProcessStart (conn=0x7f7d50000920,
driver=0x7f7d78013b20, vm=0x7f7d68006e10, migrateFrom=0x7f7d680136d0
"tcp:[::]:49152", stdin_fd=-1, stdin_path=0x0, snapshot=0x0,
vmop=VIR_NETDEV_VPORT_PROFILE_OP_MIGRATE_IN_START, flags=6) at
qemu/qemu_process.c:4008
#7 0x0000000000491110 in qemuMigrationPrepareAny (driver=0x7f7d78013b20,
dconn=0x7f7d50000920, cookiein=<value optimized out>, cookieinlen=255,
cookieout=0x7f7d82f05ae0, cookieoutlen=0x7f7d82f05aec,
dname=0x7f7d68002570 "i-2-10-VM",
dom_xml=0x7f7d680013d0 "<domain type='kvm'>\n <name>i-2-10-VM</name>\n
<uuid>95c5aa11-f7ad-4322-b377-d153774e330f</uuid>\n <description>CentOS 6.5
(64-bit)</description>\n <memory unit='KiB'>1048576</memory>\n
<currentMemory"..., st=0x0, port=49152, autoPort=true) at
qemu/qemu_migration.c:1502
#8 0x0000000000491ab7 in qemuMigrationPrepareDirect (driver=0x7f7d78013b20,
dconn=0x7f7d50000920,
cookiein=0x7f7d680012c0 "<qemu-migration>\n <name>i-2-10-VM</name>\n
<uuid>95c5aa11-f7ad-4322-b377-d153774e330f</uuid>\n
<hostname>eqx-cs-cmp-05.ipscape.com.au</hostname>\n
<hostuuid>44454c4c-3000-104b-8043-b4c04f573232</host"..., cookieinlen=255,
cookieout=0x7f7d82f05ae0, cookieoutlen=0x7f7d82f05aec, uri_in=<value optimized
out>, uri_out=0x7f7d68002680, dname=0x7f7d68002570 "i-2-10-VM",
dom_xml=0x7f7d680013d0 "<domain type='kvm'>\n <name>i-2-10-VM</name>\n
<uuid>95c5aa11-f7ad-4322-b377-d153774e330f</uuid>\n <description>CentOS 6.5
(64-bit)</description>\n <memory unit='KiB'>1048576</memory>\n
<currentMemory"...) at qemu/qemu_migration.c:1747
#9 0x00000000004550b4 in qemuDomainMigratePrepare3 (dconn=0x7f7d50000920,
cookiein=0x7f7d680012c0 "<qemu-migration>\n <name>i-2-10-VM</name>\n
<uuid>95c5aa11-f7ad-4322-b377-d153774e330f</uuid>\n
<hostname>eqx-cs-cmp-05.ipscape.com.au</hostname>\n
<hostuuid>44454c4c-3000-104b-8043-b4c04f573232</host"..., cookieinlen=255,
cookieout=0x7f7d82f05ae0, cookieoutlen=<value optimized out>, uri_in=<value
optimized out>, uri_out=0x7f7d68002680, flags=1, dname=0x7f7d68002570
"i-2-10-VM",
resource=10000,
dom_xml=0x7f7d680013d0 "<domain type='kvm'>\n <name>i-2-10-VM</name>\n
<uuid>95c5aa11-f7ad-4322-b377-d153774e330f</uuid>\n <description>CentOS 6.5
(64-bit)</description>\n <memory unit='KiB'>1048576</memory>\n
<currentMemory"...) at qemu/qemu_driver.c:10657
#10 0x00007f7d92def13f in virDomainMigratePrepare3 (dconn=0x7f7d50000920,
cookiein=0x7f7d680012c0 "<qemu-migration>\n <name>i-2-10-VM</name>\n
<uuid>95c5aa11-f7ad-4322-b377-d153774e330f</uuid>\n
<hostname>eqx-cs-cmp-05.ipscape.com.au</hostname>\n
<hostuuid>44454c4c-3000-104b-8043-b4c04f573232</host"..., cookieinlen=255,
cookieout=0x7f7d82f05ae0, cookieoutlen=0x7f7d82f05aec, uri_in=0x7f7d680026b0
"tcp:10.61.153.22", uri_out=0x7f7d68002680, flags=1,
dname=0x7f7d68002570 "i-2-10-VM", bandwidth=10000,
dom_xml=0x7f7d680013d0 "<domain type='kvm'>\n <name>i-2-10-VM</name>\n
<uuid>95c5aa11-f7ad-4322-b377-d153774e330f</uuid>\n <description>CentOS 6.5
(64-bit)</description>\n <memory unit='KiB'>1048576</memory>\n
<currentMemory"...) at libvirt.c:6157
#11 0x000000000042eddf in remoteDispatchDomainMigratePrepare3 (server=<value
optimized out>, client=<value optimized out>, msg=<value optimized out>,
rerr=0x7f7d82f05b80, args=0x7f7d680027b0,
ret=0x7f7d68002790) at remote.c:3590
#12 remoteDispatchDomainMigratePrepare3Helper (server=<value optimized out>,
client=<value optimized out>, msg=<value optimized out>, rerr=0x7f7d82f05b80,
args=0x7f7d680027b0, ret=0x7f7d68002790)
at remote_dispatch.h:3695
#13 0x00007f7d92e50132 in virNetServerProgramDispatchCall (prog=0x16b7700,
server=0x16aea20, client=0x16b7010, msg=0x16b07f0) at
rpc/virnetserverprogram.c:431
#14 virNetServerProgramDispatch (prog=0x16b7700, server=0x16aea20,
client=0x16b7010, msg=0x16b07f0) at rpc/virnetserverprogram.c:304
#15 0x00007f7d92e4d70e in virNetServerProcessMsg (srv=<value optimized out>,
client=0x16b7010, prog=<value optimized out>, msg=0x16b07f0) at
rpc/virnetserver.c:170
#16 0x00007f7d92e4ddac in virNetServerHandleJob (jobOpaque=<value optimized
out>, opaque=0x16aea20) at rpc/virnetserver.c:191
#17 0x00007f7d92d6bb3c in virThreadPoolWorker (opaque=<value optimized out>) at
util/threadpool.c:144
#18 0x00007f7d92d6b429 in virThreadHelper (data=<value optimized out>) at
util/threads-pthread.c:161
#19 0x00007f7d8fe789d1 in start_thread (arg=0x7f7d82f06700) at
pthread_create.c:301
#20 0x00007f7d8f7be9dd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:115
{code}
Without the debuginfo it looks like the issue is in libc6
{code}
Program terminated with signal 11, Segmentation fault.
#0 0x00007f7d8f7fe43a in __strcmp_sse42 () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install
libvirt-0.10.2-46.el6_6.2.x86_64
(gdb) backtrace
#0 0x00007f7d8f7fe43a in __strcmp_sse42 () from /lib64/libc.so.6
#1 0x00007f7d92dd6411 in ?? () from /usr/lib64/libvirt.so.0
#2 0x00007f7d92dd87e8 in ?? () from /usr/lib64/libvirt.so.0
#3 0x00000000004aac4e in ?? ()
#4 0x000000000048a2cc in ?? ()
#5 0x0000000000491110 in ?? ()
#6 0x0000000000491ab7 in ?? ()
#7 0x00000000004550b4 in ?? ()
#8 0x00007f7d92def13f in virDomainMigratePrepare3 () from
/usr/lib64/libvirt.so.0
#9 0x000000000042eddf in ?? ()
#10 0x00007f7d92e50132 in virNetServerProgramDispatch () from
/usr/lib64/libvirt.so.0
#11 0x00007f7d92e4d70e in ?? () from /usr/lib64/libvirt.so.0
#12 0x00007f7d92e4ddac in ?? () from /usr/lib64/libvirt.so.0
#13 0x00007f7d92d6bb3c in ?? () from /usr/lib64/libvirt.so.0
#14 0x00007f7d92d6b429 in ?? () from /usr/lib64/libvirt.so.0
#15 0x00007f7d8fe789d1 in start_thread () from /lib64/libpthread.so.0
#16 0x00007f7d8f7be9dd in clone () from /lib64/libc.so.6
{code}
I've tried messing with the cpu passthrough params in agent.properties for the
Cloudstack Agent & it doesn't appear to be making any difference
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)