* LVM2/lib format_text/archiver.c metadata/metad ...
@ 2012-02-27 11:36 zkabelac
0 siblings, 0 replies; 2+ messages in thread
From: zkabelac @ 2012-02-27 11:36 UTC (permalink / raw)
To: lvm-devel
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: zkabelac at sourceware.org 2012-02-27 11:36:00
Modified files:
lib/format_text: archiver.c
lib/metadata : metadata.c
Log message:
Add stack traces for lock_vol failures
Adding at least stack traces with some FIXMEs for cases,
where we might want to do something cleaver - maybe fail command
or give user hints something is not going well ?
For remote_backup is stack probably 'good' enough for now.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/format_text/archiver.c.diff?cvsroot=lvm2&r1=1.50&r2=1.51
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/metadata/metadata.c.diff?cvsroot=lvm2&r1=1.487&r2=1.488
--- LVM2/lib/format_text/archiver.c 2012/02/12 23:01:19 1.50
+++ LVM2/lib/format_text/archiver.c 2012/02/27 11:35:59 1.51
@@ -244,7 +244,8 @@
int backup(struct volume_group *vg)
{
if (vg_is_clustered(vg))
- remote_backup_metadata(vg);
+ if (!remote_backup_metadata(vg))
+ stack;
return backup_locally(vg);
}
--- LVM2/lib/metadata/metadata.c 2012/02/27 09:51:31 1.487
+++ LVM2/lib/metadata/metadata.c 2012/02/27 11:36:00 1.488
@@ -2708,7 +2708,8 @@
if (cache_updated) {
/* Instruct remote nodes to upgrade cached metadata. */
- remote_commit_cached_metadata(vg);
+ if (!remote_commit_cached_metadata(vg))
+ stack; // FIXME: What should we do?
/*
* We need to clear old_name after a successful commit.
* The volume_group structure could be reused later.
@@ -2741,7 +2742,8 @@
log_error("Attempt to drop cached metadata failed "
"after reverted update for VG %s.", vg->name);
- remote_revert_cached_metadata(vg);
+ if (!remote_revert_cached_metadata(vg))
+ stack; // FIXME: What should we do?
}
struct _vg_read_orphan_baton {
^ permalink raw reply [flat|nested] 2+ messages in thread
* LVM2/lib format_text/archiver.c metadata/metad ...
@ 2011-02-21 12:11 prajnoha
0 siblings, 0 replies; 2+ messages in thread
From: prajnoha @ 2011-02-21 12:11 UTC (permalink / raw)
To: lvm-devel
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: prajnoha at sourceware.org 2011-02-21 12:10:59
Modified files:
lib/format_text: archiver.c
lib/metadata : metadata.c metadata.h
Log message:
Add vg_set_fid function to change VG format instance.
This function also sets a reference to a new VG format instance for all PVs
that are part of the VG so the PV-VG interconnection is consistent after the
change.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/format_text/archiver.c.diff?cvsroot=lvm2&r1=1.39&r2=1.40
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/metadata/metadata.c.diff?cvsroot=lvm2&r1=1.426&r2=1.427
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/metadata/metadata.h.diff?cvsroot=lvm2&r1=1.231&r2=1.232
--- LVM2/lib/format_text/archiver.c 2011/02/21 12:07:03 1.39
+++ LVM2/lib/format_text/archiver.c 2011/02/21 12:10:58 1.40
@@ -308,10 +308,11 @@
fic.type = FMT_INSTANCE_VG | FMT_INSTANCE_MDAS | FMT_INSTANCE_AUX_MDAS;
fic.context.vg_ref.vg_name = vg->name;
fic.context.vg_ref.vg_id = NULL;
- if (!(vg->fid = cmd->fmt->ops->create_instance(cmd->fmt, &fic))) {
+ if (!(fid = cmd->fmt->ops->create_instance(cmd->fmt, &fic))) {
log_error("Failed to allocate format instance");
return 0;
}
+ vg_set_fid(vg, fid);
/*
* Setting vg->old_name to a blank value will explicitly
--- LVM2/lib/metadata/metadata.c 2011/02/21 12:07:03 1.426
+++ LVM2/lib/metadata/metadata.c 2011/02/21 12:10:58 1.427
@@ -3931,6 +3931,16 @@
return FAILED_EXIST;
}
+void vg_set_fid(struct volume_group *vg,
+ struct format_instance *fid)
+{
+ struct pv_list *pvl;
+
+ vg->fid = fid;
+ dm_list_iterate_items(pvl, &vg->pvs)
+ pvl->pv->fid = fid;
+}
+
static int _convert_key_to_string(const char *key, size_t key_len,
unsigned sub_key, char *buf, size_t buf_len)
{
--- LVM2/lib/metadata/metadata.h 2011/02/21 12:05:50 1.231
+++ LVM2/lib/metadata/metadata.h 2011/02/21 12:10:59 1.232
@@ -190,6 +190,7 @@
unsigned mda_is_ignored(struct metadata_area *mda);
void mda_set_ignored(struct metadata_area *mda, unsigned ignored);
unsigned mda_locns_match(struct metadata_area *mda1, struct metadata_area *mda2);
+void vg_set_fid(struct volume_group *vg, struct format_instance *fid);
int fid_add_mda(struct format_instance *fid, struct metadata_area *mda,
const char *key, size_t key_len, const unsigned sub_key);
int fid_add_mdas(struct format_instance *fid, struct dm_list *mdas,
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-02-27 11:36 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-02-27 11:36 LVM2/lib format_text/archiver.c metadata/metad zkabelac
-- strict thread matches above, loose matches on Subject: below --
2011-02-21 12:11 prajnoha
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.