From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17492 invoked by alias); 21 May 2010 12:45:27 -0000 Received: (qmail 17371 invoked by uid 9737); 21 May 2010 12:45:23 -0000 Date: Fri, 21 May 2010 12:45:00 -0000 Message-ID: <20100521124523.17360.qmail@sourceware.org> From: zkabelac@sourceware.org To: lvm-devel@redhat.com, lvm2-cvs@sourceware.org Subject: LVM2 ./WHATS_NEW lib/metadata/metadata.c Mailing-List: contact lvm2-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: lvm2-cvs-owner@sourceware.org X-SW-Source: 2010-05/txt/msg00076.txt.bz2 CVSROOT: /cvs/lvm2 Module name: LVM2 Changes by: zkabelac@sourceware.org 2010-05-21 12:45:19 Modified files: . : WHATS_NEW lib/metadata : metadata.c Log message: Replicator: extend _lv_each_dependency() with dependencies for Replicator devices Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.1581&r2=1.1582 http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/metadata/metadata.c.diff?cvsroot=lvm2&r1=1.343&r2=1.344 --- LVM2/WHATS_NEW 2010/05/21 12:43:02 1.1581 +++ LVM2/WHATS_NEW 2010/05/21 12:45:18 1.1582 @@ -1,6 +1,7 @@ Version 2.02.67 - =============================== - Add check_replicator_segment() for catching internal replicator errors. + Extend _lv_each_dependency() with Replicator dependencies. + Add check_replicator_segment() for catching internal Replicator errors. Initial lvm2 support for Replicator metadata handling. Checking open_count in all parents of presuspend_node. Added dm_tree_node_set_presuspend_node() to presuspend child in deactivate. --- LVM2/lib/metadata/metadata.c 2010/05/19 11:52:37 1.343 +++ LVM2/lib/metadata/metadata.c 2010/05/21 12:45:19 1.344 @@ -2001,6 +2001,8 @@ struct lv_segment *lvseg; struct logical_volume *deps[] = { + (lv->rdevice && lv != lv->rdevice->lv) ? lv->rdevice->lv : 0, + (lv->rdevice && lv != lv->rdevice->slog) ? lv->rdevice->slog : 0, lv->snapshot ? lv->snapshot->origin : 0, lv->snapshot ? lv->snapshot->cow : 0 }; for (i = 0; i < sizeof(deps) / sizeof(*deps); ++i) { @@ -2011,6 +2013,8 @@ dm_list_iterate_items(lvseg, &lv->segments) { if (lvseg->log_lv && !fn(lvseg->log_lv, data)) return_0; + if (lvseg->rlog_lv && !fn(lvseg->rlog_lv, data)) + return_0; for (s = 0; s < lvseg->area_count; ++s) { if (seg_type(lvseg, s) == AREA_LV && !fn(seg_lv(lvseg,s), data)) return_0;