[linux-lvm] segfault with pvcreate command

Kumar amit mehta gmate.amit at gmail.com
Sun Jun 2 03:37:24 UTC 2013


Hi,

I'm observing a weird segfault with any of the lvm commands (pvcreate, 
lvcreate etc). Please note that these tools worked fine when I was using
the lvm2 package installed from the red hat repository. Only recently, I
had removed the lvm2 package(yum remove lvm2) and have built the lvm
tools by cloning the git repo and following the straight-forward steps
of ./configure; make; make install.

Some information about my system and error logs.
<snip>
# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 6.4 (Santiago)

# uname -a
Linux snow 2.6.32-358.el6.x86_64 #1 SMP Tue
Jan 29 11:47:41 EST 2013 x86_64 x86_64 x86_64 GNU/Linux

# rpm -qa|grep -i mapper
device-mapper-multipath-0.4.9-64.el6.x86_64
device-mapper-1.02.77-9.el6.x86_64
device-mapper-event-1.02.77-9.el6.x86_64
device-mapper-multipath-libs-0.4.9-64.el6.x86_64
device-mapper-persistent-data-0.1.4-1.el6.x86_64
device-mapper-libs-1.02.77-9.el6.x86_64
device-mapper-event-libs-1.02.77-9.el6.x86_64

# rpm -qa|grep -i lvm2
lvm2-libs-2.02.98-9.el6.x86_64

# git config --get remote.origin.url
git://git.fedorahosted.org/git/lvm2.git

# pvcreate
Segmentation fault (core dumped)

# file core.17231 
core.17231: ELF 64-bit LSB core file x86-64, version 1 (SYSV),
SVR4-style, from 'pvcreate'

# ldd `which pvcreate`
	linux-vdso.so.1 =>  (0x00007fffd36e9000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f012220e000)
	libdevmapper.so.1.02 => /lib64/libdevmapper.so.1.02
(0x00007f0121fd4000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f0121c40000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f0122418000)
	libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f0121a21000)
	libsepol.so.1 => /lib64/libsepol.so.1 (0x00007f01217e4000)
	libudev.so.0 => /lib64/libudev.so.0 (0x00007f01215d5000)

# gdb -q pvcreate core.17231
Reading symbols from /sbin/pvcreate...(no debugging symbols
found)...done.
[New Thread 17231]
Reading symbols from /lib64/libdl.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libdl.so.2
Reading symbols from /lib64/libdevmapper.so.1.02...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libdevmapper.so.1.02
Reading symbols from /lib64/libc.so.6...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libc.so.6
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib64/libselinux.so.1...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libselinux.so.1
Reading symbols from /lib64/libsepol.so.1...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libsepol.so.1
Reading symbols from /lib64/libudev.so.0...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libudev.so.0
Reading symbols from
/lib/modules/2.6.32-358.el6.x86_64/vdso/vdso.so...Reading symbols from
/usr/lib/debug/lib/modules/2.6.32-358.el6.x86_64/vdso/vdso.so.debug...done.
done.
Loaded symbols for /lib/modules/2.6.32-358.el6.x86_64/vdso/vdso.so
Core was generated by `pvcreate'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f6d5c375403 in ?? () from /lib64/libdevmapper.so.1.02 <---
Missing separate debuginfos, use: debuginfo-install
device-mapper-libs-1.02.77-9.el6.x86_64 glibc-2.12-1.107.el6.x86_64
libselinux-2.0.94-5.3.el6.x86_64 libsepol-2.0.41-4.el6.x86_64
libudev-147-2.46.el6.x86_64
(gdb) bt
#0  0x00007f6d5c375403 in ?? () from /lib64/libdevmapper.so.1.02
#1  0x0000000000447bd0 in merge_config_tree ()
#2  0x0000000000444588 in _merge_config_files ()
#3  0x0000000000446b07 in create_toolcontext ()
#4  0x00000000004217da in init_lvm ()
#5  0x0000000000425a75 in lvm2_main ()
#6  0x00007f6d5bfe1cdd in __libc_start_main () from /lib64/libc.so.6
#7  0x0000000000413569 in _start ()

<snip>

Q1: I think this could be due to some mismatch between the dev-mapper
(from yum repo) and the lvm2(from git repo), but if it's not then in
order to debug further, is there a way to get the debug packages or
built one from the lvm2 sources ?

Q2: In my case, the segfault seem to be happening in the dev-mapper
library, so in order to debug dev-mapper library issues, should i be
reporting this in a dm-mapper mailing list? 

Q3: Why there is no 'make uninstall' option in the lvm2 git repo tree?
After seing this segfault, I thought of cleanup and re-installing lvm2
package from the yum repo, but before that I wish to remove all the
lvm2 binaries and shared objects that got installed, but there seem to be 
no clean way of doing so.

-Amit




More information about the linux-lvm mailing list