mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-22 17:35:59 +03:00
65623b63a2
So far pvmove_update_metadata (originaly _update_metadata) was used for both initial and subsequent metadata updates during polling. With a new polldaemon (lvmpolld) all operations that require polling have to be split in two parts: The initiating one and the polling one. The later step will be used from lvm command spawned by lvmpolld to monitor and advance the mirror on next segment if required. 1) The initiation part is _update_metadata in pvmove.c which performs only the first update, setting up the pvmove itself in metadata. 2) pvmove_update_metadata in pvmove_poll.c now handles all other subsequent metadata updates except the last one. Due to the split we could remove some code. Also some functions were moved back to pvmove.c as they were suited for initialisation of pvmove only.
36 lines
1.1 KiB
C
36 lines
1.1 KiB
C
/*
|
|
* Copyright (C) 2015 Red Hat, Inc. All rights reserved.
|
|
*
|
|
* This file is part of LVM2.
|
|
*
|
|
* This copyrighted material is made available to anyone wishing to use,
|
|
* modify, copy, or redistribute it subject to the terms and conditions
|
|
* of the GNU Lesser General Public License v.2.1.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
* along with this program; if not, write to the Free Software Foundation,
|
|
* Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
*/
|
|
|
|
#ifndef _LVM_PVMOVE_H
|
|
#define _LVM_PVMOVE_H
|
|
|
|
struct cmd_context;
|
|
struct dm_list;
|
|
struct logical_volume;
|
|
struct volume_group;
|
|
|
|
struct volume_group *get_vg(struct cmd_context *cmd, const char *vgname);
|
|
|
|
int pvmove_update_metadata(struct cmd_context *cmd, struct volume_group *vg,
|
|
struct logical_volume *lv_mirr,
|
|
struct dm_list *lvs_changed, unsigned flags);
|
|
|
|
int pvmove_finish(struct cmd_context *cmd, struct volume_group *vg,
|
|
struct logical_volume *lv_mirr, struct dm_list *lvs_changed);
|
|
|
|
struct volume_group *pvmove_get_copy_vg(struct cmd_context *cmd,
|
|
const char *name, const char *uuid);
|
|
|
|
#endif /* _LVM_PVMOVE_H */
|