summaryrefslogtreecommitdiffstats
path: root/lib/sysfs.c
diff options
context:
space:
mode:
authorPeter Rajnoha2012-02-14 09:53:16 +0100
committerKarel Zak2012-03-07 13:54:11 +0100
commit09a71aa1d5bf373e130131b8c33066bf0542a61b (patch)
tree5ab7f46d7d78d49591170ddd2d7f14103bec9618 /lib/sysfs.c
parentlsblk: remove (dm-N) from NAME for raw/pair output format (diff)
downloadkernel-qcow2-util-linux-09a71aa1d5bf373e130131b8c33066bf0542a61b.tar.gz
kernel-qcow2-util-linux-09a71aa1d5bf373e130131b8c33066bf0542a61b.tar.xz
kernel-qcow2-util-linux-09a71aa1d5bf373e130131b8c33066bf0542a61b.zip
lsblk: add inverse tree support (-s)
$ lsblk --inverse -o NAME /dev/dm-0 NAME luks-10d813de-fa82-4f67-a86c-23d5d0e7c30e (dm-0) └─sda6 └─sda Signed-off-by: Peter Rajnoha <prajnoha@redhat.com> Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'lib/sysfs.c')
-rw-r--r--lib/sysfs.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/sysfs.c b/lib/sysfs.c
index 2340d3046..a57c0a6ba 100644
--- a/lib/sysfs.c
+++ b/lib/sysfs.c
@@ -281,10 +281,11 @@ int sysfs_is_partition_dirent(DIR *dir, struct dirent *d, const char *parent_nam
char path[256];
#ifdef _DIRENT_HAVE_D_TYPE
- if (d->d_type != DT_DIR)
+ if (d->d_type != DT_DIR &&
+ d->d_type != DT_LNK)
return 0;
#endif
- if (strncmp(parent_name, d->d_name, strlen(parent_name)))
+ if (parent_name && strncmp(parent_name, d->d_name, strlen(parent_name)))
return 0;
/* Cannot use /partition file, not supported on old sysfs */