From eafe88e34a0698d2f4ebb747ab4911e35d0dfe4c Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Sat, 11 Apr 2015 01:52:50 +0200 Subject: gpt-generator: Find device on a stateless system A stateless system has a tmpfs as root file system. That obviously does not have any block device associated with it. So try falling back to the device of the /usr filesystem if the root filesystem fails. --- src/gpt-auto-generator/gpt-auto-generator.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/gpt-auto-generator') diff --git a/src/gpt-auto-generator/gpt-auto-generator.c b/src/gpt-auto-generator/gpt-auto-generator.c index 99dc50fe3c..96a8447efd 100644 --- a/src/gpt-auto-generator/gpt-auto-generator.c +++ b/src/gpt-auto-generator/gpt-auto-generator.c @@ -658,8 +658,13 @@ static int add_mounts(void) { if (r < 0) return log_error_errno(r, "Failed to determine block device of root file system: %m"); else if (r == 0) { - log_debug("Root file system not on a (single) block device."); - return 0; + r = get_block_device("/usr", &devno); + if (r < 0) + return log_error_errno(r, "Failed to determine block device of /usr file system: %m"); + else if (r == 0) { + log_debug("Neither root nor /usr file system are on a (single) block device."); + return 0; + } } return enumerate_partitions(devno); -- cgit v1.2.3-54-g00ecf