summaryrefslogtreecommitdiff
path: root/src/udev
diff options
context:
space:
mode:
authorKay Sievers <kay@vrfy.org>2015-08-11 13:07:25 +0200
committerKay Sievers <kay@vrfy.org>2015-08-11 13:07:25 +0200
commit0238d4c660e732dd03ba0cdb54a29ec5870ee849 (patch)
tree2f0aa8ecf27e67723d7cccaff352d19db01c031f /src/udev
parentaae68db9b441963b0d1b8519e0aee8e2fc05e20c (diff)
downloadsystemd-0238d4c660e732dd03ba0cdb54a29ec5870ee849.tar.gz
systemd-0238d4c660e732dd03ba0cdb54a29ec5870ee849.tar.bz2
systemd-0238d4c660e732dd03ba0cdb54a29ec5870ee849.zip
gpt-auto-generator: apply partition-type flags only to specific partition-types
The partition-type flags are defined independently for every partition-type. Apply them only to the types where they are defined, and not to the ESP, which does not appear to share the same set of flags. https://github.com/systemd/systemd/issues/920
Diffstat (limited to 'src/udev')
-rw-r--r--src/udev/udev-builtin-blkid.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/udev/udev-builtin-blkid.c b/src/udev/udev-builtin-blkid.c
index 1dad4476f3..b8066ea6e9 100644
--- a/src/udev/udev-builtin-blkid.c
+++ b/src/udev/udev-builtin-blkid.c
@@ -143,6 +143,11 @@ static int find_gpt_root(struct udev_device *dev, blkid_probe pr, bool test) {
if (sd_id128_equal(type, GPT_ESP)) {
sd_id128_t id, esp;
+ unsigned long long flags;
+
+ flags = blkid_partition_get_flags(pp);
+ if (flags & GPT_FLAG_NO_AUTO)
+ continue;
/* We found an ESP, let's see if it matches
* the ESP we booted from. */