all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Fiona Ebner <f.ebner@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH storage v3 01/13] plugin: export/import: fix calls to path() method
Date: Thu, 19 Dec 2024 11:43:04 +0100	[thread overview]
Message-ID: <20241219104316.35329-2-f.ebner@proxmox.com> (raw)
In-Reply-To: <20241219104316.35329-1-f.ebner@proxmox.com>

The plugin API does not require call context detection for the
returned value of the path() method. See other plugins like
ISCSIDirect/ZFS that do not implement it. So do not expect it for
external plugins either.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
---

New in v3.

 src/PVE/Storage/Plugin.pm | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/PVE/Storage/Plugin.pm b/src/PVE/Storage/Plugin.pm
index 5deff76..92609ad 100644
--- a/src/PVE/Storage/Plugin.pm
+++ b/src/PVE/Storage/Plugin.pm
@@ -1697,7 +1697,7 @@ sub volume_export {
 
     my $err_msg = "volume export format $format not available for $class\n";
     if ($scfg->{path} && !defined($snapshot) && !defined($base_snapshot)) {
-	my $file = $class->path($scfg, $volname, $storeid) or die $err_msg;
+	my ($file) = $class->path($scfg, $volname, $storeid) or die $err_msg;
 	my $file_format = ($class->parse_volname($volname))[6];
 	my $size = file_size_info($file, undef, $file_format);
 
@@ -1731,7 +1731,7 @@ sub volume_export {
 sub volume_export_formats {
     my ($class, $scfg, $storeid, $volname, $snapshot, $base_snapshot, $with_snapshots) = @_;
     if ($scfg->{path} && !defined($snapshot) && !defined($base_snapshot)) {
-	my $file = $class->path($scfg, $volname, $storeid)
+	my ($file) = $class->path($scfg, $volname, $storeid)
 	    or return;
 	my $format = ($class->parse_volname($volname))[6];
 	my $size = file_size_info($file, undef, $format);
@@ -1769,7 +1769,7 @@ sub volume_import {
 
     # Check for an existing file first since interrupting alloc_image doesn't
     # free it.
-    my $file = $class->path($scfg, $volname, $storeid);
+    my ($file) = $class->path($scfg, $volname, $storeid);
     if (-e $file) {
 	die "file '$file' already exists\n" if !$allow_rename;
 	warn "file '$file' already exists - importing with a different name\n";
@@ -1786,7 +1786,7 @@ sub volume_import {
 	if (defined($name) && $allocname ne $oldname) {
 	    die "internal error: unexpected allocated name: '$allocname' != '$oldname'\n";
 	}
-	my $file = $class->path($scfg, $volname, $storeid)
+	my ($file) = $class->path($scfg, $volname, $storeid)
 	    or die "internal error: failed to get path to newly allocated volume $volname\n";
 	if ($data_format eq 'raw' || $data_format eq 'qcow2' || $data_format eq 'vmdk') {
 	    run_command(['dd', "of=$file", 'conv=sparse', 'bs=64k'],
-- 
2.39.5



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


  reply	other threads:[~2024-12-19 10:43 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-19 10:43 [pve-devel] [PATCH storage/container v3 00/13] import/export for shared storages Fiona Ebner
2024-12-19 10:43 ` Fiona Ebner [this message]
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 02/13] rbd plugin: schema: document default value for 'krbd' setting Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 03/13] export: redirect stdout to avoid any unrelated messages ending up in the export stream Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 04/13] rbd plugin: factor out helper to check if volume already exists Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 05/13] rbd plugin: implement volume import/export Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 06/13] rbd plugin: improve volume exists helper Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 07/13] iscsi plugin: support volume export Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 08/13] iscsi direct " Fiona Ebner
2024-12-19 10:46   ` Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 09/13] common: introduce common module Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 10/13] plugins: volume import: align size up to 1KiB Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH storage v3 11/13] rbd plugin: list: drop outdated error message check Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH container v3 12/13] migration: allow rbd storages for remote migration Fiona Ebner
2024-12-19 10:43 ` [pve-devel] [PATCH container v3 13/13] migration: add reminder to evaluate dropping seemingly useless check for PVE 9 Fiona Ebner
2024-12-19 11:45 ` [pve-devel] partially-applied: [PATCH storage/container v3 00/13] import/export for shared storages Fabian Grünbichler
2024-12-19 12:17   ` Fiona Ebner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241219104316.35329-2-f.ebner@proxmox.com \
    --to=f.ebner@proxmox.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal