[lvm-devel] LVM2 ./WHATS_NEW tools/lvchange.c
agk at sourceware.org
agk at sourceware.org
Thu Jul 31 13:03:02 UTC 2008
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: agk at sourceware.org 2008-07-31 13:03:02
Modified files:
. : WHATS_NEW
tools : lvchange.c
Log message:
Change lvchange exit status to indicate if any part of the operation failed.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.939&r2=1.940
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/tools/lvchange.c.diff?cvsroot=lvm2&r1=1.92&r2=1.93
--- LVM2/WHATS_NEW 2008/07/31 12:38:31 1.939
+++ LVM2/WHATS_NEW 2008/07/31 13:03:01 1.940
@@ -1,5 +1,6 @@
Version 2.02.40 -
================================
+ Change lvchange exit status to indicate if any part of the operation failed.
Fix pvchange and pvremove to handle PVs without mdas.
Refactor _text_pv_read and always return mda list if requested.
Fix configure to work w/o readline unless --enable-readline used. (2.02.39)
--- LVM2/tools/lvchange.c 2008/06/18 11:32:14 1.92
+++ LVM2/tools/lvchange.c 2008/07/31 13:03:01 1.93
@@ -545,7 +545,7 @@
static int lvchange_single(struct cmd_context *cmd, struct logical_volume *lv,
void *handle __attribute((unused)))
{
- int doit = 0;
+ int doit = 0, docmds = 0;
int archived = 0;
if (!(lv->vg->status & LVM_WRITE) &&
@@ -606,6 +606,7 @@
return ECMD_FAILED;
archived = 1;
doit += lvchange_permission(cmd, lv);
+ docmds++;
}
/* allocation policy change */
@@ -614,6 +615,7 @@
return ECMD_FAILED;
archived = 1;
doit += lvchange_alloc(cmd, lv);
+ docmds++;
}
/* read ahead sector change */
@@ -622,6 +624,7 @@
return ECMD_FAILED;
archived = 1;
doit += lvchange_readahead(cmd, lv);
+ docmds++;
}
/* read ahead sector change */
@@ -630,6 +633,7 @@
return ECMD_FAILED;
archived = 1;
doit += lvchange_persistent(cmd, lv);
+ docmds++;
if (sigint_caught())
return ECMD_FAILED;
}
@@ -640,6 +644,7 @@
return ECMD_FAILED;
archived = 1;
doit += lvchange_tag(cmd, lv, addtag_ARG);
+ docmds++;
}
/* del tag */
@@ -648,6 +653,7 @@
return ECMD_FAILED;
archived = 1;
doit += lvchange_tag(cmd, lv, deltag_ARG);
+ docmds++;
}
if (doit)
@@ -674,6 +680,9 @@
return ECMD_FAILED;
}
+ if (doit != docmds)
+ return ECMD_FAILED;
+
return ECMD_PROCESSED;
}
More information about the lvm-devel
mailing list