mirror of
git://sourceware.org/git/lvm2.git
synced 2025-01-07 21:18:59 +03:00
libdm: enhance error message
This commit is contained in:
parent
4c1caa7e26
commit
4b0565b82f
@ -1503,8 +1503,37 @@ static int _thin_pool_node_message(struct dm_tree_node *dnode, struct thin_messa
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!_node_message(dnode->info.major, dnode->info.minor,
|
if (!_node_message(dnode->info.major, dnode->info.minor,
|
||||||
tm->expected_errno, buf))
|
tm->expected_errno, buf)) {
|
||||||
return_0;
|
switch (m->type) {
|
||||||
|
case DM_THIN_MESSAGE_CREATE_SNAP:
|
||||||
|
case DM_THIN_MESSAGE_CREATE_THIN:
|
||||||
|
if (errno == EEXIST) {
|
||||||
|
/*
|
||||||
|
* ATM errno from ioctl() is preserved through code error path chain
|
||||||
|
* If this would ever change, another way need to be used to
|
||||||
|
* obtain result from failed DM message
|
||||||
|
*/
|
||||||
|
log_error("Thin pool %s already contain thin device with device_id %u.",
|
||||||
|
_node_name(dnode), m->u.m_create_snap.device_id);
|
||||||
|
/*
|
||||||
|
* TODO:
|
||||||
|
*
|
||||||
|
* Give some useful advice how to solve this problem,
|
||||||
|
* until lvconvert --repair can handle this automatically
|
||||||
|
*/
|
||||||
|
log_error("Manual intervention may be required to remove device dev_id=%u in thin pool metadata.",
|
||||||
|
m->u.m_create_snap.device_id);
|
||||||
|
log_error("Optionally new thin volume with device_id=%u can be manually added into a volume group.",
|
||||||
|
m->u.m_create_snap.device_id);
|
||||||
|
log_warn("WARNING: When uncertain how to do this, contact support!");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
/* fall through */
|
||||||
|
default:
|
||||||
|
return_0;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user