diff options
author | Konstantin Khlebnikov <khlebnikov@yandex-team.ru> | 2024-10-04 17:13:43 -0700 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2024-10-22 08:15:17 -0600 |
commit | 758737d86f8a2d74c0fa9f8b2523fa7fd1e0d0aa (patch) | |
tree | 2d2daba75e75ef2d9d40bcfbb9b17eb9623c8412 | |
parent | 746fc7e9d459ae3731104d719e22b13829f71e55 (diff) |
block: add partition uuid into uevent as "PARTUUID"
Both most common formats have uuid in addition to partition name:
GPT: standard uuid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DOS: 4 byte disk signature and 1 byte partition xxxxxxxx-xx
Tools from util-linux use the same notation for them.
Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Reviewed-by: Kyle Fortin <kyle.fortin@oracle.com>
[dianders: rebased to modern kernels]
Signed-off-by: Douglas Anderson <dianders@google.com>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20241004171340.v2.1.I938c91d10e454e841fdf5d64499a8ae8514dc004@changeid
Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r-- | block/partitions/core.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/block/partitions/core.c b/block/partitions/core.c index cdad05f97647..815ed33caa1b 100644 --- a/block/partitions/core.c +++ b/block/partitions/core.c @@ -256,6 +256,8 @@ static int part_uevent(const struct device *dev, struct kobj_uevent_env *env) add_uevent_var(env, "PARTN=%u", bdev_partno(part)); if (part->bd_meta_info && part->bd_meta_info->volname[0]) add_uevent_var(env, "PARTNAME=%s", part->bd_meta_info->volname); + if (part->bd_meta_info && part->bd_meta_info->uuid[0]) + add_uevent_var(env, "PARTUUID=%s", part->bd_meta_info->uuid); return 0; } |