diff options
| author | Brian Norris | 2023-01-07 02:04:22 +0000 |
|---|---|---|
| committer | Christian Marangi | 2023-01-20 14:02:30 +0000 |
| commit | e9b59f063bb333df6d58bf434554753d123a713f (patch) | |
| tree | 5985bd18a1f1ac97e241a5cb8e4ee620a1e6a71d | |
| parent | 3affe9ea5098c8bb90111ce97d50ad976ef0c034 (diff) | |
| download | fstools-e9b59f063bb333df6d58bf434554753d123a713f.tar.gz | |
partname: Ignore root=PARTUUID...
We're assuming all root= arguments are /dev/ paths, but many targets
utilize root=PARTUUID=<xxx> strategies. At least allow them to fall back
to scanning all block devices.
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
| -rw-r--r-- | libfstools/partname.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libfstools/partname.c b/libfstools/partname.c index f59c52e..9c27015 100644 --- a/libfstools/partname.c +++ b/libfstools/partname.c @@ -128,12 +128,12 @@ static struct volume *partname_volume_find(char *name) return NULL; } - if (get_var_from_file("/proc/cmdline", "root", rootparam, sizeof(rootparam))) { + if (get_var_from_file("/proc/cmdline", "root", rootparam, sizeof(rootparam)) && rootparam[0] == '/') { rootdev = rootdevname(rootparam); /* find partition on same device as rootfs */ snprintf(ueventgstr, sizeof(ueventgstr), "%s/%s/*/uevent", block_dir_name, rootdev); } else { - /* no 'root=' kernel cmdline parameter, find on any block device */ + /* no useful 'root=' kernel cmdline parameter, find on any block device */ snprintf(ueventgstr, sizeof(ueventgstr), "%s/*/uevent", block_dir_name); } |