[lvm-devel] LVM2 ./WHATS_NEW liblvm/lvm2app.h liblvm/lvm_vg.c
wysochanski at sourceware.org
wysochanski at sourceware.org
Wed Sep 2 21:40:11 UTC 2009
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: wysochanski at sourceware.org 2009-09-02 21:40:10
Modified files:
. : WHATS_NEW
liblvm : lvm2app.h lvm_vg.c
Log message:
Update lvm_vg_write() to handle the deferred commit of lvm_vg_write().
Now that we've refactored the internal library functions that do the
vg_remove, we can handle the deferred commit of a lvm_vg_remove() inside
lvm_vg_write(). This makes the VG create/remove API more consistent in
terms of disk commits - they now both require an lvm_vg_write() to commit
the create or remove to disk.
Signed-off-by: Dave Wysochanski <dwysocha at redhat.com>
Author: Dave Wysochanski <dwysocha at redhat.com>
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.1253&r2=1.1254
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/liblvm/lvm2app.h.diff?cvsroot=lvm2&r1=1.6&r2=1.7
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/liblvm/lvm_vg.c.diff?cvsroot=lvm2&r1=1.27&r2=1.28
--- LVM2/WHATS_NEW 2009/09/02 21:34:11 1.1253
+++ LVM2/WHATS_NEW 2009/09/02 21:40:10 1.1254
@@ -1,5 +1,6 @@
Version 2.02.52 -
=================================
+ Update lvm_vg_remove to require lvm_vg_write to commit remove to disk.
Enforce an alphabetical lock ordering for vgname locks.
Refactor vgsplit, vgmerge, and vgrename to obey vgname ordering rules.
Implement write lock prioritisation for file locking and make it default.
--- LVM2/liblvm/lvm2app.h 2009/08/13 12:18:15 1.6
+++ LVM2/liblvm/lvm2app.h 2009/09/02 21:40:10 1.7
@@ -394,8 +394,8 @@
/**
* Remove a VG from the system.
*
- * This function commits the change to disk and does not require calling
- * lvm_vg_write.
+ * This function removes a Volume Group object in memory, and requires
+ * calling lvm_vg_write to commit the removal to disk.
*
* \param vg
* VG handle obtained from lvm_vg_create or lvm_vg_open.
--- LVM2/liblvm/lvm_vg.c 2009/09/02 21:39:29 1.27
+++ LVM2/liblvm/lvm_vg.c 2009/09/02 21:40:10 1.28
@@ -106,9 +106,9 @@
return -1;
if (dm_list_empty(&vg->pvs)) {
- log_error("Volume group %s does not contain any "
- "physical volumes.", vg->name);
- return -1;
+ if (!vg_remove(vg))
+ return -1;
+ return 0;
}
if (! dm_list_empty(&vg->removed_pvs)) {
@@ -156,8 +156,6 @@
if (!vg_remove_check(vg))
return -1;
- if (!vg_remove(vg))
- return -1;
return 0;
}
More information about the lvm-devel
mailing list