diff options
author | Milan Broz <mbroz@redhat.com> | 2009-04-22 09:39:45 +0000 |
---|---|---|
committer | Milan Broz <mbroz@redhat.com> | 2009-04-22 09:39:45 +0000 |
commit | dfbc015c6954249d9075b42ae3dc8de2045200ae (patch) | |
tree | f8505069aea51ba926393fbaa2b6da45b2fd3acc /daemons/clvmd/clvmd-command.c | |
parent | e5656d86d2b6c2986b506df0bf05534ffb810c84 (diff) | |
download | lvm2-dfbc015c6954249d9075b42ae3dc8de2045200ae.tar.gz lvm2-dfbc015c6954249d9075b42ae3dc8de2045200ae.tar.xz lvm2-dfbc015c6954249d9075b42ae3dc8de2045200ae.zip |
Fix remote metadata backup for clvmd
Run backup of metadata on remote nodes in the
same place like local node - when calling backup().
Introduce backup_locally() which calls only
local backup if needed.
Remote backup is now trigerred by LCK_VG_BACKUP flag
combination (special VG lock).
This lock type will call check_current_backup()
(including backup_locally() call) and updates
metadata on all nodes.
(Patch fixes non-functional remote backup,
current call during VG lock never triggers.)
Diffstat (limited to 'daemons/clvmd/clvmd-command.c')
-rw-r--r-- | daemons/clvmd/clvmd-command.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/daemons/clvmd/clvmd-command.c b/daemons/clvmd/clvmd-command.c index 12bf935e..dffff216 100644 --- a/daemons/clvmd/clvmd-command.c +++ b/daemons/clvmd/clvmd-command.c @@ -159,7 +159,11 @@ int do_command(struct local_client *client, struct clvm_header *msg, int msglen, break; case CLVMD_CMD_VG_BACKUP: - lvm_do_backup(&args[2]); + /* + * Do not run backup on local node, caller should do that. + */ + if (!client) + lvm_do_backup(&args[2]); break; default: |