From 8846199d2006824debdc587df73826a7efa31d24 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Thu, 14 Feb 2013 11:26:06 +0100 Subject: bootchart: if "root=/dev" is not matched, don't try to read /sys --- src/bootchart/svg.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src/bootchart') diff --git a/src/bootchart/svg.c b/src/bootchart/svg.c index 414d7af9b9..f8a3776873 100644 --- a/src/bootchart/svg.c +++ b/src/bootchart/svg.c @@ -165,18 +165,19 @@ static void svg_title(const char *build) } /* extract root fs so we can find disk model name in sysfs */ + /* FIXME: this works only in the simple case */ c = strstr(cmdline, "root=/dev/"); if (c) { strncpy(rootbdev, &c[10], 3); rootbdev[3] = '\0'; - } - sprintf(filename, "block/%s/device/model", rootbdev); - fd = openat(sysfd, filename, O_RDONLY); - f = fdopen(fd, "r"); - if (f) { - if (!fgets(model, 255, f)) - fprintf(stderr, "Error reading disk model for %s\n", rootbdev); - fclose(f); + sprintf(filename, "block/%s/device/model", rootbdev); + fd = openat(sysfd, filename, O_RDONLY); + f = fdopen(fd, "r"); + if (f) { + if (!fgets(model, 255, f)) + fprintf(stderr, "Error reading disk model for %s\n", rootbdev); + fclose(f); + } } /* various utsname parameters */ -- cgit v1.2.3-54-g00ecf