[linux-lvm] LVM2.2.02.88 - segfault when using lv_t pointers obtained from lvm_vg_list_lvs

Zdenek Kabelac zdenek.kabelac at gmail.com
Sun Oct 9 22:00:26 UTC 2011

2011/10/9 Alexander Lyakas <alex.bolshoy at gmail.com>:
> Hello Zdenek,
> I have done several runs with Valgrind, but unfortunately this problem
> did not reproduce yet.
> There are, however, several other observations from Valgrind and
> non-Valgrind runs.
> 1) The following warning from Valgrind has appeared a couple of times:
> ==25539== Syscall param stat(file_name) points to unaddressable byte(s)
> ==25539==    at 0x61BE715: _xstat (xstat.c:38)
> ==25539==    by 0x50E016F: _insert (in /lib/liblvm2app.so.2.2)

You will surely need to compile lvm  with:
--enable-debug --enable-valgrind-pool

> 2) Another warning from Valgrind
> ==25539== Warning: noted but unhandled ioctl 0x1261 with no size/direction hints
> ==25539==    This could cause spurious value errors to appear.
> ==25539==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on
> writing a proper wrapper.

Some ioctl are not known to tje valgrind.

> 3) With the new LVM version (88) there are a lot of error messages like:
> semid 32997377: semop failed for cookie 0xd4d4ab7: incorrect semaphore state
> Failed to set a proper state for notification semaphore identified by
> cookie value 223169207 (0xd4d4ab7) to initialize waiting for incoming
> notifications.

Certainly strange

> 4) Internal error: Maps lock 260780032 < unlock 260796416
> This message also happens on lvm_vg_close(), right before the previous
> error message

This maps lock tests are disabled with valgrind compilation, since
valgrind is allocating unexpected memory.

> 5) Additional error that is now frequently seen in syslog
> Oct  5 06:49:54 i-0000067c prog: Wiping cache of LVM-capable devices
> Oct  5 06:49:54 i-0000067c prog: device-mapper: status ioctl failed:
> Invalid argument

Check kernel log (dmesg) what is going on here - possible accessing
non-existing device ?


More information about the linux-lvm mailing list