* [pve-devel] [PATCH-SERIES v2 common/manager 0/2] preparation for #3900: support parsing verbose size suffixes {K, M, G, T}iB
@ 2025-06-02 11:32 Fiona Ebner
2025-06-02 11:32 ` [pve-devel] [PATCH v2 common 1/1] schema: support sizes with verbose " Fiona Ebner
2025-06-02 11:32 ` [pve-devel] [PATCH v2 manager 2/2] vzdump: use verbose size suffix when logging archive file size Fiona Ebner
0 siblings, 2 replies; 3+ messages in thread
From: Fiona Ebner @ 2025-06-02 11:32 UTC (permalink / raw)
To: pve-devel
Add early support for parsing verbose suffixes {K,M,G,T}iB for sizes.
Currently, this is almost exclusively used for guest disks. The plan
is to write disks with the new suffixes starting with Proxmox VE 9 and
having parsing support already in Proxmox VE 8 will help with people
doing accidental (or otherwise) backwards-migrations of guests.
Changes in v2:
* Only add parsing support for now.
common:
Fiona Ebner (1):
schema: support sizes with verbose suffixes {K,M,G,T}iB
src/PVE/JSONSchema.pm | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
manager:
Fiona Ebner (1):
vzdump: use verbose size suffix when logging archive file size
PVE/VZDump.pm | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
--
2.39.5
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* [pve-devel] [PATCH v2 common 1/1] schema: support sizes with verbose suffixes {K, M, G, T}iB
2025-06-02 11:32 [pve-devel] [PATCH-SERIES v2 common/manager 0/2] preparation for #3900: support parsing verbose size suffixes {K, M, G, T}iB Fiona Ebner
@ 2025-06-02 11:32 ` Fiona Ebner
2025-06-02 11:32 ` [pve-devel] [PATCH v2 manager 2/2] vzdump: use verbose size suffix when logging archive file size Fiona Ebner
1 sibling, 0 replies; 3+ messages in thread
From: Fiona Ebner @ 2025-06-02 11:32 UTC (permalink / raw)
To: pve-devel
The single-letter suffixes are ambiguous and especially in the context
of disks, the powers of ten are usually used. Proxmox VE uses
multiples of 1024 however.
This is in preparation to adapt format_size() to prefer the verbose
suffixes which is planned for Proxmox VE 9.
The single-letter suffixes stay supported for backwards-compatibility
for API/CLI users as well as parsing backup configurations. The
function is currently also used for parsing the 'target-size' Ceph
pool option (still restricted via schema to single-letter suffixes).
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
---
Changes in v2:
* Only add parsing support for now.
src/PVE/JSONSchema.pm | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/PVE/JSONSchema.pm b/src/PVE/JSONSchema.pm
index 7c63af1..01f100d 100644
--- a/src/PVE/JSONSchema.pm
+++ b/src/PVE/JSONSchema.pm
@@ -880,16 +880,16 @@ sub check_format {
sub parse_size {
my ($value) = @_;
- return undef if $value !~ m/^(\d+(\.\d+)?)([KMGT])?$/;
+ return undef if $value !~ m/^(\d+(\.\d+)?)([KMGT](?:iB)?)?$/;
my ($size, $unit) = ($1, $3);
if ($unit) {
- if ($unit eq 'K') {
+ if ($unit eq 'K' || $unit eq 'KiB') {
$size = $size * 1024;
- } elsif ($unit eq 'M') {
+ } elsif ($unit eq 'M' || $unit eq 'MiB') {
$size = $size * 1024 * 1024;
- } elsif ($unit eq 'G') {
+ } elsif ($unit eq 'G' || $unit eq 'GiB') {
$size = $size * 1024 * 1024 * 1024;
- } elsif ($unit eq 'T') {
+ } elsif ($unit eq 'T' || $unit eq 'TiB') {
$size = $size * 1024 * 1024 * 1024 * 1024;
}
}
--
2.39.5
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* [pve-devel] [PATCH v2 manager 2/2] vzdump: use verbose size suffix when logging archive file size
2025-06-02 11:32 [pve-devel] [PATCH-SERIES v2 common/manager 0/2] preparation for #3900: support parsing verbose size suffixes {K, M, G, T}iB Fiona Ebner
2025-06-02 11:32 ` [pve-devel] [PATCH v2 common 1/1] schema: support sizes with verbose " Fiona Ebner
@ 2025-06-02 11:32 ` Fiona Ebner
1 sibling, 0 replies; 3+ messages in thread
From: Fiona Ebner @ 2025-06-02 11:32 UTC (permalink / raw)
To: pve-devel
The single-letter suffixes are ambiguous and especially in the context
of disks, the powers of ten are usually used. Use exact suffixes
instead when logging the archive file size.
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
---
No changes in v2.
PVE/VZDump.pm | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/PVE/VZDump.pm b/PVE/VZDump.pm
index 58fa0f64..a7143926 100644
--- a/PVE/VZDump.pm
+++ b/PVE/VZDump.pm
@@ -235,19 +235,19 @@ sub format_size {
my $kb = $size / 1024;
if ($kb < 1024) {
- return int ($kb) . "KB";
+ return int ($kb) . "KiB";
}
my $mb = $size / (1024*1024);
if ($mb < 1024) {
- return int ($mb) . "MB";
+ return int ($mb) . "MiB";
}
my $gb = $mb / 1024;
if ($gb < 1024) {
- return sprintf ("%.2fGB", $gb);
+ return sprintf ("%.2fGiB", $gb);
}
my $tb = $gb / 1024;
- return sprintf ("%.2fTB", $tb);
+ return sprintf ("%.2fTiB", $tb);
}
sub format_time {
--
2.39.5
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-06-02 11:32 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-02 11:32 [pve-devel] [PATCH-SERIES v2 common/manager 0/2] preparation for #3900: support parsing verbose size suffixes {K, M, G, T}iB Fiona Ebner
2025-06-02 11:32 ` [pve-devel] [PATCH v2 common 1/1] schema: support sizes with verbose " Fiona Ebner
2025-06-02 11:32 ` [pve-devel] [PATCH v2 manager 2/2] vzdump: use verbose size suffix when logging archive file size Fiona Ebner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal