Hi All,
I use "dd if=/dev/zero of=/dev/vg00/lv00 bs=1K" to make big IO on the origin LV. then I use lvcreate to create a snapshot on it (lv00). it will suspend till the 'dd' ends.
I read the source code and find the 'dm_suspend' function will call "lock_fs", then find all of them hang at "sync_blockdev(struct block_device *bdev)" function, because the function call "__filemap_fdatawrite(mapping, WB_SYNC_ALL);" later.
I don't want the lvcreate snapshot take so long, suspend the origin lv is needed?And the WB_SYNC_ALL will cause update dirty pages slower than 'dd' write data.
sync_blockdev will wait on any mapping it seems. can dm_suspend do not wait for it?
My kernel version:2.6.29. LVM2.02.63.
Thanks.
Best regards,
Busby
-- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel