[linux-lvm] LV only detected when using "lvscan -D" on amd64 kernel

Felix Domke tmbinc at elitedvb.net
Mon Oct 27 08:55:02 UTC 2003


Hi,

>User space parses and passes it via ioctls to the kernel.
>Please look at lvm.h for the ioctls defined and the structures involved.
>Grep the LVM1 library source in tools/lib/ for "ioctl" to get you started.
>  
>
Where exactly is the LV information passed to the kernel? is it 
"LV_CREATE"?

The kernel seems to don't know the LV, the LV_STATUS_BYINDEX on the 
"/dev/fast/group" returns "No such device or address" (ENXIO) for each 
index, including 0, which should be the LV in question.

It looks as "lvm_do_lv_status_byindex" in the kernel returns -ENXIO 
because vg_ptr->lv[lv_status_byindex_req.lv_index] is zero. Where is the 
point where this array is written? I only found LV_CREATE, but that's 
only called in vgimport, vgmerge and lvcreate, so it looks as there is 
another place.


Can you point me in the direction?


Felix






More information about the linux-lvm mailing list