aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Warren2012-11-08 18:12:25 -0600
committerJens Axboe2012-11-23 07:28:53 -0600
commit1ad7e89940d5ac411928189e1a4a01901dbf590f (patch)
tree64bfe2bceb4d157320465d529869783443e031bf /block/genhd.c
parentd48c152a41c8cd6de832397b4ea6f0429ad86318 (diff)
downloadkernel-common-1ad7e89940d5ac411928189e1a4a01901dbf590f.tar.gz
kernel-common-1ad7e89940d5ac411928189e1a4a01901dbf590f.tar.xz
kernel-common-1ad7e89940d5ac411928189e1a4a01901dbf590f.zip
block: store partition_meta_info.uuid as a string
This will allow other types of UUID to be stored here, aside from true UUIDs. This also simplifies code that uses this field, since it's usually constructed from a, used as a, or compared to other, strings. Note: A simplistic approach here would be to set uuid_str[36]=0 whenever a /PARTNROFF option was found to be present. However, this modifies the input string, and causes subsequent calls to devt_from_partuuid() not to see the /PARTNROFF option, which causes different results. In order to avoid misleading future maintainers, this parameter is marked const. Signed-off-by: Stephen Warren <swarren@nvidia.com> Cc: Tejun Heo <tj@kernel.org> Cc: Will Drewry <wad@chromium.org> Cc: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/genhd.c')
-rw-r--r--block/genhd.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/block/genhd.c b/block/genhd.c
index 6cace663a80..b281f3a2d26 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -743,7 +743,6 @@ void __init printk_all_partitions(void)
743 struct hd_struct *part; 743 struct hd_struct *part;
744 char name_buf[BDEVNAME_SIZE]; 744 char name_buf[BDEVNAME_SIZE];
745 char devt_buf[BDEVT_SIZE]; 745 char devt_buf[BDEVT_SIZE];
746 char uuid_buf[PARTITION_META_INFO_UUIDLTH * 2 + 5];
747 746
748 /* 747 /*
749 * Don't show empty devices or things that have been 748 * Don't show empty devices or things that have been
@@ -762,16 +761,11 @@ void __init printk_all_partitions(void)
762 while ((part = disk_part_iter_next(&piter))) { 761 while ((part = disk_part_iter_next(&piter))) {
763 bool is_part0 = part == &disk->part0; 762 bool is_part0 = part == &disk->part0;
764 763
765 uuid_buf[0] = '\0';
766 if (part->info)
767 snprintf(uuid_buf, sizeof(uuid_buf), "%pU",
768 part->info->uuid);
769
770 printk("%s%s %10llu %s %s", is_part0 ? "" : " ", 764 printk("%s%s %10llu %s %s", is_part0 ? "" : " ",
771 bdevt_str(part_devt(part), devt_buf), 765 bdevt_str(part_devt(part), devt_buf),
772 (unsigned long long)part_nr_sects_read(part) >> 1 766 (unsigned long long)part_nr_sects_read(part) >> 1
773 , disk_name(disk, part->partno, name_buf), 767 , disk_name(disk, part->partno, name_buf),
774 uuid_buf); 768 part->info ? part->info->uuid : "");
775 if (is_part0) { 769 if (is_part0) {
776 if (disk->driverfs_dev != NULL && 770 if (disk->driverfs_dev != NULL &&
777 disk->driverfs_dev->driver != NULL) 771 disk->driverfs_dev->driver != NULL)