mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
libdm: add helper function to print _node_name
_node_name() prepares into dm_tree internal buffer device name and it (major:minor) for easy usage for debug messages. To avoid any allocation a small buffer in struct dm_tree is preallocated to store this message.
This commit is contained in:
parent
a69ded43b0
commit
04ae5007e3
@ -301,6 +301,7 @@ struct dm_tree {
|
||||
int no_flush; /* 1 sets noflush (mirrors/multipath) */
|
||||
int retry_remove; /* 1 retries remove if not successful */
|
||||
uint32_t cookie;
|
||||
char buf[DM_NAME_LEN + 32]; /* print buffer for device_name (major:minor) */
|
||||
const char **optional_uuid_suffixes; /* uuid suffixes ignored when matching */
|
||||
};
|
||||
|
||||
@ -595,6 +596,19 @@ static struct dm_tree_node *_find_dm_tree_node_by_uuid(struct dm_tree *dtree,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Return node's device_name (major:minor) for debug messages */
|
||||
static const char *_node_name(struct dm_tree_node *dnode)
|
||||
{
|
||||
if (dm_snprintf(dnode->dtree->buf, sizeof(dnode->dtree->buf),
|
||||
"%s (%" PRIu32 ":%" PRIu32 ")",
|
||||
dnode->name, dnode->info.major, dnode->info.minor) < 0) {
|
||||
stack;
|
||||
return dnode->name;
|
||||
}
|
||||
|
||||
return dnode->dtree->buf;
|
||||
}
|
||||
|
||||
void dm_tree_node_set_udev_flags(struct dm_tree_node *dnode, uint16_t udev_flags)
|
||||
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user