[Pkg-libvirt-maintainers] Bug#769600: libvirt-daemon - null pointer deref in libvirt_lxc
Bastian Blank
waldi at debian.org
Fri Nov 14 21:58:54 UTC 2014
Package: libvirt-daemon
Version: 1.2.9-4
Severity: serious
libvirt_lxc dies with null pointer access almost immediately.
Kernel log shows:
| libvirt_lxc[5030]: segfault at 0 ip 00007fe434292fb6 sp 00007fe43851ddf8 error 4 in libc-2.19.so[7fe43416e000+19f000]
strace shows:
| access("/sbin/init", F_OK) = 0
| --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0} ---
| +++ killed by SIGSEGV (core dumped) +++
The core file shows:
| #0 0x00007fabd5168fb6 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
| #1 0x00007fabd87cabd9 in lxcContainerGetNetDef (vmDef=<optimized out>, vmDef=<optimized out>, devName=<optimized out>)
| at ../../../src/lxc/lxc_container.c:476
| #2 lxcContainerRenameAndEnableInterfaces (veths=<optimized out>, nveths=<optimized out>, vmDef=<optimized out>)
| at ../../../src/lxc/lxc_container.c:506
| #3 lxcContainerChild (data=0x7fabda1212b0) at ../../../src/lxc/lxc_container.c:2127
| #4 0x00007fabd5129ccd in clone () from /lib/x86_64-linux-gnu/libc.so.6
| (gdb) f 1
| #1 0x00007fabd87cabd9 in lxcContainerGetNetDef (vmDef=<optimized out>, vmDef=<optimized out>, devName=<optimized out>)
| at ../../../src/lxc/lxc_container.c:476
| 476 ../../../src/lxc/lxc_container.c: No such file or directory.
| (gdb) info locals
| i = 0
| netDef = 0x7fabda13bde0
| (gdb) p netDef
| $1 = (virDomainNetDefPtr) 0x7fabda13bde0
| (gdb) p *netDef.ifname_guest_actual
| Cannot access memory at address 0x0
Relevant vm config:
| <domain type='lxc'>
| <name>example</name>
| <uuid>e315c3e7-e257-4635-a9a0-75e4cd909fa0</uuid>
| <memory unit='KiB'>500000</memory>
| <currentMemory unit='KiB'>500000</currentMemory>
| <vcpu placement='static'>1</vcpu>
| <resource>
| <partition>/machine</partition>
| </resource>
| <os>
| <type arch='x86_64'>exe</type>
| <init>/sbin/init</init>
| </os>
| <clock offset='utc'/>
| <on_poweroff>destroy</on_poweroff>
| <on_reboot>restart</on_reboot>
| <on_crash>destroy</on_crash>
| <devices>
| <emulator>/usr/lib/libvirt/libvirt_lxc</emulator>
| <filesystem type='mount' accessmode='passthrough'>
| <source dir='/vm'/>
| <target dir='/'/>
| </filesystem>
| <interface type='direct'>
| <mac address='52:54:00:f3:21:f9'/>
| <source dev='eth0' mode='private'/>
| </interface>
| <console type='pty'>
| <target type='lxc' port='0'/>
| </console>
| </devices>
| </domain>
Bastian
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.16-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
More information about the Pkg-libvirt-maintainers
mailing list