[linux-lvm] lvm_vg_create_lv_linear() stuck in dm_udev_wait()

Alexander Lyakas alex.bolshoy at gmail.com
Sun Aug 21 18:14:36 UTC 2011


Greetings all,
on stock ubuntu natty, using liblvm 2.02.66, sometimes
lvm_vg_create_lv_linear () gets stuck in the following stack.

#0  0x00007f3b9636a0f7 in semop () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f3b9606863c in dm_udev_wait () from /lib/libdevmapper.so.1.02.1
#2  0x00007f3b973df41b in ?? () from /lib/liblvm2app.so.2.2
#3  0x00007f3b973e012e in ?? () from /lib/liblvm2app.so.2.2
#4  0x00007f3b97399aec in ?? () from /lib/liblvm2app.so.2.2
#5  0x00007f3b9739b02b in ?? () from /lib/liblvm2app.so.2.2
#6  0x00007f3b9739bb7e in ?? () from /lib/liblvm2app.so.2.2
#7  0x00007f3b973e4c51 in ?? () from /lib/liblvm2app.so.2.2
#8  0x00007f3b973b9238 in ?? () from /lib/liblvm2app.so.2.2
#9  0x00007f3b973b9e36 in ?? () from /lib/liblvm2app.so.2.2
#10 0x00007f3b973c2118 in ?? () from /lib/liblvm2app.so.2.2
#11 0x00007f3b973989ba in lvm_vg_create_lv_linear () from /lib/liblvm2app.so.2.2
...

I realize that somehow it is related to udev synchronization. In my
application, I have a udev monitor for "block" subsystem type, but
currently it does nothing with the events it receives (it calls
udev_monitor_receive_device(), udev_device_get_action() and then
udev_device_unref() for every event. I plan in the future to use it
for waking up other threads.

Can somebody pls advise on how to investigate this issue. It does not
happen always.

Thanks,
   Alex.




More information about the linux-lvm mailing list