[dm-devel] NetBSD snapshot creation problem

Adam Hamsik haaaad at gmail.com
Sat Jul 26 17:42:57 UTC 2008


Hi, folks

This summer I'm working on NetBSD LVM. I have written our own device- 
mapper
driver which works quite fine now. In the second part of GSOC I want  
to work on
lvm snapshots.

When I try to create snapshot I got an error which is really strange  
and I was not able to
find what is bad in my implementation that it behaves like this. I  
have attached full log from
lvcreate and pasted only small part of it.

_tree_action is called from lv_suspend=>_lv_preload->...->_tree_action

_tree_action add lv->name lv1
vg00-lv1 --- Setting minor to 0 -1----1 this is begining of my  
problems here dm_tree_add_new_dev sets info.exists to 0.
         Checking kernel supports striped segment type for lv1
vg00-lv1-real --- Setting minor to 0 0---0
         Checking kernel supports striped segment type for lv1-real
vg00-snap0 --- Setting minor to 0 -1----1
         Checking kernel supports snapshot segment type for snap0
vg00-snap0-cow --- Setting minor to 0 0---0
         Checking kernel supports snapshot segment type for snap0-cow
dm_preload_children here :(null) -- 0
0---0
dm_preload_children here :vg00-lv1 -- 0
-1----1
dm_preload_children here :vg00-lv1-real -- 0
0---0
dm_preload_chidren end
dm BBBBBB
Creating vg00-lv1-real
dm_task_run
dmt type  create
Ioctl type  create---516
         vg00-lv1-real: Stacking NODE_ADD (169,3) 0:0 0600
dm_task_get_info vg00-lv1-real ---- 1
_create_node 1
dm CCCCCC
     Loading vg00-lv1-real table
         Adding target: 0 24576 linear /dev/wd2a 384
dm_task_run
dmt type  reload
dm_task_run
dmt type  table
Ioctl type  table---20
dm_task_run
dmt type  reload
Ioctl type  reload---516
dm_task_get_info vg00-lv1-real ---- 1
     Suppressed vg00-lv1-real identical table reload.
dm DDDDD
dm EEEEEE
dm_preload_chidren end -> vg00-lv1-real created and loaded
dm BBBBBB [line 1538]
Creating vg00-lv1 Because info.exists = 0 _create_node is called.
dm_task_run
dmt type  create
Ioctl type  create---516
_do_dm_ioctl 17 -> EEXIST -> because vg00-lv1 already exist and  
therefore I can't create
			     device with equal name again.
_create_node 0
dm_preload_chidren end
   Failed to suspend origin lv1

I have spent 2 days with debugging lvm2tools and libdevmapper :) and I  
was not
able to find why I can't create snapshots. Do you have any idea where  
can be a problem ?


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: lvcreate_log.txt
URL: <http://listman.redhat.com/archives/dm-devel/attachments/20080726/8dd2b99f/attachment.txt>
-------------- next part --------------



Regards

Adam.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
URL: <http://listman.redhat.com/archives/dm-devel/attachments/20080726/8dd2b99f/attachment.sig>


More information about the dm-devel mailing list