From d6bf26af8e510c1802b66fdb5b0bce762e35f444 Mon Sep 17 00:00:00 2001 From: Mike Snitzer Date: Mon, 8 Feb 2010 23:28:06 +0000 Subject: [PATCH] Remove false "failed to find tree node for " error from _cached_info(). When activating a merging origin it is valid, and expected, to not have a node in the deptree for both the origin and its merging snapshot. The _cached_info() caller is only concerned with whether a device is open. If there isn't a node in the tree the associated device is definitely not open. --- WHATS_NEW | 1 + lib/activate/dev_manager.c | 5 ++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/WHATS_NEW b/WHATS_NEW index e8aa222a4..341009023 100644 --- a/WHATS_NEW +++ b/WHATS_NEW @@ -1,5 +1,6 @@ Version 2.02.61 - =================================== + Remove false "failed to find tree node for" error when activating merging origin. Make lvconvert --repair --use-policies exit with success when no action is needed. Add multiple snapshot lv 'lvconvert --merge @tag' support via process_each_lv(). Fix inappropriate second resync when adding mimage to core-logged mirror. diff --git a/lib/activate/dev_manager.c b/lib/activate/dev_manager.c index 60235747c..6fbc3921c 100644 --- a/lib/activate/dev_manager.c +++ b/lib/activate/dev_manager.c @@ -264,10 +264,9 @@ static const struct dm_info *_cached_info(struct dm_pool *mem, return NULL; } - if (!(dnode = dm_tree_find_node_by_uuid(dtree, dlid))) { - log_error("failed to find tree node for %s", lv->name); + /* An activating merging origin won't have a node in the tree yet */ + if (!(dnode = dm_tree_find_node_by_uuid(dtree, dlid))) return NULL; - } if (!(dinfo = dm_tree_node_get_info(dnode))) { log_error("failed to get info from tree node for %s", lv->name);