From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21813 invoked by alias); 23 Jan 2012 20:56:45 -0000 Received: (qmail 21795 invoked by uid 9478); 23 Jan 2012 20:56:44 -0000 Date: Mon, 23 Jan 2012 20:56:00 -0000 Message-ID: <20120123205644.21793.qmail@sourceware.org> From: jbrassow@sourceware.org To: lvm-devel@redhat.com, lvm2-cvs@sourceware.org Subject: LVM2 ./WHATS_NEW lib/activate/dev_manager.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: 2012-01/txt/msg00056.txt.bz2 CVSROOT: /cvs/lvm2 Module name: LVM2 Changes by: jbrassow@sourceware.org 2012-01-23 20:56:43 Modified files: . : WHATS_NEW lib/activate : dev_manager.c Log message: Fix the way RAID meta LVs are added to the dependency tree. Similar to the "mirror" segment type's log device, _add_dev_to_dtree should be called and not _add_lv_to_dtree when adding metadata sub-LVs to the deptree. Since _add_lv_to_dtree was being called, 'origin_only' could be set if a snapshot sits on top of the RAID device. This would cause the actual device that needed to be added to be skipped in favor of the non-existant device, "-real". Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.2234&r2=1.2235 http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/activate/dev_manager.c.diff?cvsroot=lvm2&r1=1.263&r2=1.264 --- LVM2/WHATS_NEW 2012/01/21 05:29:51 1.2234 +++ LVM2/WHATS_NEW 2012/01/23 20:56:42 1.2235 @@ -1,5 +1,6 @@ Version 2.02.89 - ================================== + Fix the way RAID meta LVs are added to the dependency tree. Change exclusive LV activation logic to try local node before remote nodes. Add CLVMD_FLAG_REMOTE to skip processing on local node. Prompt if request is made to remove a snapshot whose "Merge failed". --- LVM2/lib/activate/dev_manager.c 2012/01/20 22:02:04 1.263 +++ LVM2/lib/activate/dev_manager.c 2012/01/23 20:56:43 1.264 @@ -1176,8 +1176,8 @@ if (lv->status & RAID) for (s = 0; s < seg->area_count; s++) - if (!_add_lv_to_dtree(dm, dtree, - seg_metalv(seg, s), origin_only)) + if (!_add_dev_to_dtree(dm, dtree, + seg_metalv(seg, s), NULL)) return_0; /* Add any LVs referencing a PVMOVE LV unless told not to. */