summaryrefslogtreecommitdiffstats
path: root/misc-utils
diff options
context:
space:
mode:
authorKarel Zak2018-10-16 14:20:29 +0200
committerKarel Zak2018-12-07 12:32:57 +0100
commitae4c2c375b13d32f3f56b915d0371c87a76fac42 (patch)
treeeb99cbc72a94b7a4cdeed6454e77d4c82dcd5c1e /misc-utils
parentlsblk: use devtree functions (diff)
downloadkernel-qcow2-util-linux-ae4c2c375b13d32f3f56b915d0371c87a76fac42.tar.gz
kernel-qcow2-util-linux-ae4c2c375b13d32f3f56b915d0371c87a76fac42.tar.xz
kernel-qcow2-util-linux-ae4c2c375b13d32f3f56b915d0371c87a76fac42.zip
lsblk: use real rather than hardcoded parent
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'misc-utils')
-rw-r--r--misc-utils/lsblk.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/misc-utils/lsblk.c b/misc-utils/lsblk.c
index 3b4392b5e..321dce665 100644
--- a/misc-utils/lsblk.c
+++ b/misc-utils/lsblk.c
@@ -664,7 +664,12 @@ static struct stat *device_get_stat(struct lsblk_device *dev)
return &dev->st;
}
-static void set_scols_data(struct lsblk_device *dev, int col, int id, struct libscols_line *ln)
+static void set_scols_data(
+ struct lsblk_device *dev,
+ struct lsblk_device *parent,
+ int col,
+ int id,
+ struct libscols_line *ln)
{
struct lsblk_devprop *prop;
int sort = 0;
@@ -681,8 +686,8 @@ static void set_scols_data(struct lsblk_device *dev, int col, int id, struct lib
str = mk_name(dev->name);
break;
case COL_PKNAME:
- if (dev->parent)
- str = mk_name(dev->parent->name);
+ if (parent)
+ str = mk_name(parent->name);
break;
case COL_PATH:
if (dev->filename)
@@ -977,7 +982,7 @@ static void device_to_scols(struct lsblk_device *dev, struct lsblk_device *paren
err(EXIT_FAILURE, _("failed to allocate output line"));
for (i = 0; i < ncolumns; i++)
- set_scols_data(dev, i, get_column_id(i), dev->scols_line);
+ set_scols_data(dev, parent, i, get_column_id(i), dev->scols_line);
lsblk_reset_iter(&itr, LSBLK_ITER_FORWARD);