mirror of
https://github.com/linux-sunxi/u-boot-sunxi.git
synced 2024-02-12 11:16:03 +08:00
cmd: gpt: solve issue for swap and rename command
don't use prettyprint_part_size() in create_gpt_partitions_list() that avoid to align offset and size to 1 MiB and increase precision for start and size. This patch avoid the risk to change partition size and lost data during rename or swap. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Acked-by: Stephen Warren <swarren@nvidia.com> Tested-by: Stephen Warren <swarren@nvidia.com>
This commit is contained in:

committed by
Tom Rini

parent
0cf02ff612
commit
3a2605fa87
12
cmd/gpt.c
12
cmd/gpt.c
@ -282,14 +282,14 @@ static int create_gpt_partitions_list(int numparts, const char *guid,
|
||||
strcat(partitions_list, "name=");
|
||||
strncat(partitions_list, (const char *)curr->gpt_part_info.name,
|
||||
PART_NAME_LEN + 1);
|
||||
strcat(partitions_list, ",start=");
|
||||
prettyprint_part_size(partstr, (unsigned long)curr->gpt_part_info.start,
|
||||
(unsigned long) curr->gpt_part_info.blksz);
|
||||
sprintf(partstr, ",start=0x%llx",
|
||||
(unsigned long long)curr->gpt_part_info.start *
|
||||
curr->gpt_part_info.blksz);
|
||||
/* one extra byte for NULL */
|
||||
strncat(partitions_list, partstr, PART_NAME_LEN + 1);
|
||||
strcat(partitions_list, ",size=");
|
||||
prettyprint_part_size(partstr, curr->gpt_part_info.size,
|
||||
curr->gpt_part_info.blksz);
|
||||
sprintf(partstr, ",size=0x%llx",
|
||||
(unsigned long long)curr->gpt_part_info.size *
|
||||
curr->gpt_part_info.blksz);
|
||||
strncat(partitions_list, partstr, PART_NAME_LEN + 1);
|
||||
|
||||
strcat(partitions_list, ",uuid=");
|
||||
|
Reference in New Issue
Block a user